summaryrefslogtreecommitdiff
path: root/.config/eww/scripts/workspace-list-listener
blob: 5ab5c19318c932525b82905a1d53c939ef2a1984 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#!/bin/sh

readonly IPC=/tmp/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock

hyptctl -j workspaces | jq -cr '
	[.[].id]
	| group_by(. / 10 | floor)
	| [.[] | map(. % 10)]
'

socat -u UNIX-CONNECT:"$IPC" - \
	| stdbuf -oL grep -E '^(create|destroy)workspace>>' \
	| while read -r _; do hyprctl -j workspaces; done \
	| jq -cr '
		[.[].id]
		| group_by(. / 10 | floor)
		| [.[] | map(. % 10) | sort_by(.)]
	'