20 lines
516 B
Bash
Executable File
20 lines
516 B
Bash
Executable File
#!/bin/bash
|
|
# Get current monitor
|
|
current_monitor=$(hyprctl monitors -j | jq -r '.[] | select(.focused == true) | .name')
|
|
|
|
# Fallback
|
|
if [ -z "$current_monitor" ]; then
|
|
current_monitor=$(hyprctl monitors -j | jq -r '.[0].name')
|
|
fi
|
|
|
|
# Set workspaces
|
|
count=1
|
|
while IFS= read -r mon; do
|
|
ws=$((count * 100))
|
|
hyprctl --batch "dispatch focusmonitor $mon; dispatch workspace $ws"
|
|
count=$((count + 1))
|
|
done < <(hyprctl monitors -j | jq -r '.[].name')
|
|
|
|
# Return focus
|
|
hyprctl dispatch focusmonitor "$current_monitor"
|