diff options
| author | bdunahu <bdunahu@operationnull.com> | 2026-01-04 13:13:39 -0700 |
|---|---|---|
| committer | bdunahu <bdunahu@operationnull.com> | 2026-01-04 13:13:39 -0700 |
| commit | c2b706ff2f3aa42d58a03febad1d1b8f8d5a1142 (patch) | |
| tree | d6786f531f02717472abdc992cc6c6ef81e660b3 /kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces | |
| parent | c4ca05231236c7e9bdf5304275eadde954acf588 (diff) | |
remove unnecessary nested guix dir
Diffstat (limited to 'kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces')
| -rwxr-xr-x | kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces b/kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces new file mode 100755 index 0000000..4fb1b1c --- /dev/null +++ b/kolwynia/home/bdunahu/files/.config/eww/scripts/update_workspaces @@ -0,0 +1,34 @@ +#!/bin/sh + +gib_workspace_names() { + wmctrl -d \ + | awk '{ print $1 " " $2 " " $9 }' \ + | grep -v NSP +} + +gib_workspace_yuck() { + buffered="" + gib_workspace_names | while read -r id active name; do + name="${name#*_}" + if [ "$active" == '*' ]; then + active_class="active" + else + active_class="inactive" + fi + + if wmctrl -l | grep --regexp '.*\s\+'"$id"'\s\+.*' >/dev/null; then + button_class="occupied" + button_name="●" + else + button_class="empty" + button_name="○" + fi + buffered+="(button :class \"$button_class $active_class\" :onclick \"wmctrl -s $id\" \"$button_name\")" + echo -n "$buffered" + buffered="" + done +} + +box_attrs=':orientation "h" :class "workspaces" :space-evenly false :halign "center" :valign "center" :vexpand false :spacing 8 ' + +echo "(box $box_attrs $(gib_workspace_yuck))" |
