aboutsummaryrefslogtreecommitdiff
path: root/linux/home/.config/bspwm/scripts/hide-window
diff options
context:
space:
mode:
Diffstat (limited to 'linux/home/.config/bspwm/scripts/hide-window')
-rwxr-xr-xlinux/home/.config/bspwm/scripts/hide-window38
1 files changed, 38 insertions, 0 deletions
diff --git a/linux/home/.config/bspwm/scripts/hide-window b/linux/home/.config/bspwm/scripts/hide-window
new file mode 100755
index 0000000..c350a0e
--- /dev/null
+++ b/linux/home/.config/bspwm/scripts/hide-window
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+CMD=${1:-help}
+shift
+
+help() {
+ echo "Available commands:"
+ echo " * unhide - select and unhide window"
+}
+
+unhide() {
+ action=${1:-list}
+ case $action in
+ "list")
+ selection=$(for id in "$(bspc query -N -n .hidden)"; do
+ title=$(xtitle "$id")
+ [[ -z "$title" ]] && title="<unnamed>"
+ echo "$id" "$title"
+ done | rofi -dmenu -i -p "Hidden windows" | cut -f1 -d' ')
+
+ [[ -z "$selection" ]] && exit 1
+
+ bspc node "$selection" -g hidden=off
+ ;;
+ esac
+ }
+
+ case $CMD in
+ "help")
+ help
+ ;;
+ "unhide")
+ unhide "$1"
+ ;;
+ *)
+ help
+ ;;
+ esac