aboutsummaryrefslogtreecommitdiff
path: root/bspwm/scripts/bspwm/desktops.sh
diff options
context:
space:
mode:
authorSébastien Dailly <sebastien@chimrod.com>2021-10-24 21:55:02 +0200
committerSébastien Dailly <sebastien@chimrod.com>2021-10-24 21:55:02 +0200
commit4e1bd1e207f96ec705152e7284fcaceb135182a8 (patch)
tree38106b47bf1bc0a1a12d879bc67a513238d32a92 /bspwm/scripts/bspwm/desktops.sh
parent6a4662677712caf3a511fac4aa4e0afaf98947d0 (diff)
Bspwm configuration
Diffstat (limited to 'bspwm/scripts/bspwm/desktops.sh')
-rwxr-xr-xbspwm/scripts/bspwm/desktops.sh38
1 files changed, 38 insertions, 0 deletions
diff --git a/bspwm/scripts/bspwm/desktops.sh b/bspwm/scripts/bspwm/desktops.sh
new file mode 100755
index 0000000..d073bb8
--- /dev/null
+++ b/bspwm/scripts/bspwm/desktops.sh
@@ -0,0 +1,38 @@
+#!/bin/sh
+bspc subscribe desktop | while read -r event monitor_id desktop_id name; do
+ case $event in
+ desktop_focus)
+ ~/scripts/bspwm/wallpaper.sh &
+ for desktop in $(bspc query -D); do
+ test "x${desktop}" = "x${desktop_id}" && continue
+
+ nodes=$(bspc query -d ${desktop} -N)
+ # If the desktop is empty, delete it
+ test -z "${nodes}" && bspc desktop ${desktop} -r
+ done
+ ;;
+ desktop_add)
+ bspc monitor -o $(bspc query --names -D| sort -V | tr -s '\n' ' ')
+ case $name in
+ Musique)
+ bspc node @$name:/ -i
+ bspc rule --add Gmpc -o node=@$name:/
+ gmpc &
+ ;;
+ Web)
+ bspc node @$name:/ -i
+ bspc rule --add Firefox-esr -o node=@$name:/
+ firefox &
+ ;;
+ Mail)
+ bspc node @$name:/ -i
+ bspc rule --add thunderbird -o node=@$name:/
+ thunderbird &
+ ;;
+ esac
+ ;;
+ desktop_rename)
+ bspc monitor -o $(bspc query --names -D| sort -V | tr -s '\n' ' ')
+ ;;
+ esac
+done