#!/bin/bash # Stash all unfocused windows on current workspace to special:stash focused=$(hyprctl activewindow -j | jq -r '.address') workspace=$(hyprctl activewindow -j | jq -r '.workspace.id') # Get all windows on current workspace except the focused one hyprctl clients -j | jq -r --arg focused "$focused" --argjson ws "$workspace" \ '.[] | select(.workspace.id == $ws and .address != $focused) | .address' | \ while read -r addr; do hyprctl dispatch movetoworkspacesilent special:stash,address:"$addr" done