]> Freerunner's - dotfiles.git/commitdiff
hypr: restore workspace.sh (deleted by accident)
authorAndre Ramnitz <tux.rising@gmail.com>
Mon, 2 Mar 2026 21:38:45 +0000 (22:38 +0100)
committerAndre Ramnitz <tux.rising@gmail.com>
Mon, 2 Mar 2026 21:39:45 +0000 (22:39 +0100)
dot-config/hypr/scripts/workspace.sh [new file with mode: 0755]

diff --git a/dot-config/hypr/scripts/workspace.sh b/dot-config/hypr/scripts/workspace.sh
new file mode 100755 (executable)
index 0000000..61c9c87
--- /dev/null
@@ -0,0 +1,64 @@
+#!/bin/bash
+
+FOCUSED_MONITOR=$(hyprctl monitors -j | jq -r '.[] | select(.focused) | .name')
+
+ACTIVE_WORKSPACE=$(hyprctl activeworkspace -j | jq '.id')
+
+if [[ "$1" == '-' ]]; then
+    REQUESTED_WORKSPACE="$((--ACTIVE_WORKSPACE))"
+elif [[ "$1" == '+' ]]; then
+    REQUESTED_WORKSPACE="$((++ACTIVE_WORKSPACE))"
+else
+    REQUESTED_WORKSPACE="$1"
+fi
+
+if [[ "$2" == 'mv' ]]; then
+    PRECMD='moveto'
+else
+    PRECMD=''
+fi
+
+if [[ "$3" == 's' ]]; then
+    POSTCMD='silent'
+else
+    POSTCMD=''
+fi
+
+case "$REQUESTED_WORKSPACE" in
+    1)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/beach.png"
+        ;;
+    2)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/pulppixel22.png"
+        ;;
+    3)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/WP.jpg"
+        ;;
+    4)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/Listen.png"
+        ;;
+    5)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/Big_Sur_Simple.png"
+        ;;
+    6)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/AtariTimes.png"
+        ;;
+    *)
+        hyprctl dispatch "$PRECMD"workspace"$POSTCMD" "$REQUESTED_WORKSPACE";
+        if [[ $(pidof hyprpaper) && "$3" == "s" ]]; then exit 1; fi
+        hyprctl hyprpaper wallpaper "$FOCUSED_MONITOR, ~/Bilder/Wallpapers-simple/TronLightCycle1.png"
+        ;;
+esac
+