31 lines
842 B
Bash
Executable File
31 lines
842 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
# Toggles the window gaps globally between no gaps and the default 10/5/2, declaratively and instantly.
|
|
|
|
STATE_DIR="$HOME/.config/nomarchy"
|
|
STATE_FILE="$STATE_DIR/state.json"
|
|
mkdir -p "$STATE_DIR"
|
|
|
|
if [ ! -f "$STATE_FILE" ]; then
|
|
echo "{}" > "$STATE_FILE"
|
|
fi
|
|
|
|
gaps=$(jq -r '.hyprland.gaps_out // 10' "$STATE_FILE")
|
|
|
|
if [[ $gaps == "0" ]]; then
|
|
NEW_STATE='{"gaps_out": 10, "gaps_in": 5, "border_size": 2}'
|
|
hyprctl keyword general:gaps_out 10
|
|
hyprctl keyword general:gaps_in 5
|
|
hyprctl keyword general:border_size 2
|
|
else
|
|
NEW_STATE='{"gaps_out": 0, "gaps_in": 0, "border_size": 0}'
|
|
hyprctl keyword general:gaps_out 0
|
|
hyprctl keyword general:gaps_in 0
|
|
hyprctl keyword general:border_size 0
|
|
fi
|
|
|
|
nomarchy-state-write hyprland "$NEW_STATE" --type json
|
|
|
|
echo "Toggled gaps to $NEW_STATE declaratively."
|