aboutsummaryrefslogblamecommitdiff
path: root/.config/eww/scripts/workspace.sh
blob: 614cfcfb3e2eca5c0d79a44f22927059658a03bd (plain) (tree)
1
2
3
4
5
6
7
8
9
         



                                                                             
                      
  

                          
            
                                  
          


                          







                                









       






                              
                                                                                                                 















                                                                                         








                                                                                                          


        


                                                    
    
#!/bin/sh

active() {
num=$(river-bedload -print outputs | jq -r '.['$arg'] | select(.).view_tags')
b=0
while [ "$num" -gt 0 ]
do
        temp=$((num%2))
        if [ $temp -eq 1 ]
        then
                count=$((count+1))
        fi
        num=$((num/2))
	b=$((b+1))
	if [ $temp -eq 1 ]
	then
		echo $b
	fi
done
return
}

#define icons for workspaces 1-9

ic1="1"
ic2="2"
ic3="3"
ic4="4"
ic5="5"
ic6="6"
ic7="7"
ic8="8"
ic9="9"

workspaces() {
export arg="$1"
	unset -v \
  o1 o2 o3 o4 o5 o6 o7 o8 o9 \
  f1 f2 f3 f4 f5 f6 f7 f8 f9

if [ "$arg" = 0 ] && [ "$(river-bedload -print outputs | jq -r '.[''] | select(.).name' | wc -l | xargs)" -gt 1 ]
then
	arg=1
else
	arg=0
fi

ows="$(active)"
for num in $ows; do
	export o"$num"="$num"
done

# Get Focused workspace for current monitor ID
num=$(river-bedload -print focused | jq -r '.['$arg'] | select(.).focused_id')
export f"$num"="$num"

echo  "(box	:class \"workspace\"	:orientation \"h\" :space-evenly \"false\" 	\
          (button :onclick \"riverctl set-focused-tags $((1 << (1 - 1)))\" :class \"w0$o1$f1\" \"$ic1\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (2 - 1)))\" :class \"w0$o2$f2\" \"$ic2\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (3 - 1)))\" :class \"w0$o3$f3\" \"$ic3\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (4 - 1)))\" :class \"w0$o4$f4\" \"$ic4\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (5 - 1)))\" :class \"w0$o5$f5\" \"$ic5\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (6 - 1)))\" :class \"w0$o6$f6\" \"$ic6\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (7 - 1)))\" :class \"w0$o7$f7\" \"$ic7\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (8 - 1)))\" :class \"w0$o8$f8\" \"$ic8\") \
          (button :onclick \"riverctl set-focused-tags $((1 << (9 - 1)))\" :class \"w0$o9$f9\" \"$ic9\") \
      )"
}

workspaces "$1"
river-bedload -watch active | while read -r line; do
workspaces "$1"
done