aboutsummaryrefslogtreecommitdiff
path: root/.config/eww/scripts/workspace
blob: 16a25a1d3b52de5502d01e98d41dee02a92be9a4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/sh
workspaces() {

    ws1="1"
    ws2="2"
    ws3="3"
    ws4="4"
    ws5="5"

    # Unoccupied
    un="0"

    # check if Occupied
    o1=$(bspc query -D -d .occupied --names | grep "$ws1")
    o2=$(bspc query -D -d .occupied --names | grep "$ws2")
    o3=$(bspc query -D -d .occupied --names | grep "$ws3")
    o4=$(bspc query -D -d .occupied --names | grep "$ws4")
    o5=$(bspc query -D -d .occupied --names | grep "$ws5")

    # check if Focused
    f1=$(bspc query -D -d focused --names | grep "$ws1")
    f2=$(bspc query -D -d focused --names | grep "$ws2")
    f3=$(bspc query -D -d focused --names | grep "$ws3")
    f4=$(bspc query -D -d focused --names | grep "$ws4")
    f5=$(bspc query -D -d focused --names | grep "$ws5")

    ic_1=""
    ic_2=""
    ic_3=""
    ic_4=""
    ic_5=""
    if [ "$f1" ]; then
        ic_1=""
    elif [ "$f2" ]; then
        ic_2=""
    elif [ "$f3" ]; then
        ic_3=""
    elif [ "$f4" ]; then
        ic_4=""
    elif [ "$f5" ]; then
        ic_5=""
    fi

    echo "(box	:class \"works\"	:orientation \"h\" :spacing 5 :space-evenly \"false\" (button :onclick \"bspc desktop -f $ws1\"	:class	\"$un$o1$f1\"	\"$ic_1\") (button :onclick \"bspc desktop -f $ws2\"	:class \"$un$o2$f2\"	 \"$ic_2\") (button :onclick \"bspc desktop -f $ws3\"	:class \"$un$o3$f3\" \"$ic_3\") (button :onclick \"bspc desktop -f $ws4\"	:class \"$un$o4$f4\"	\"$ic_4\") (button :onclick \"bspc desktop -f $ws5\"	:class \"$un$o5$f5\" \"$ic_5\"))"

}
workspaces
bspc subscribe desktop node_transfer | while read -r _; do
    workspaces
done