Add files via upload
This commit is contained in:
34
config/bspwm/scripts/toggle_note_kitty.sh
Executable file
34
config/bspwm/scripts/toggle_note_kitty.sh
Executable file
@@ -0,0 +1,34 @@
|
||||
#!/usr/bin/env bash
|
||||
WIN_CLASS="nvim_notes"
|
||||
|
||||
find_node() {
|
||||
for id in $(bspc query -N -n .window); do
|
||||
xprop -id "$id" WM_CLASS 2>/dev/null | grep -q "$WIN_CLASS" && echo "$id" && return
|
||||
done
|
||||
}
|
||||
|
||||
NODE=$(find_node)
|
||||
|
||||
if [ -n "$NODE" ]; then
|
||||
# если окно скрыто — показать, иначе скрыть
|
||||
HIDDEN=$(bspc query -N -n "$NODE" --names 2>/dev/null | grep -q hidden && echo yes || echo no)
|
||||
# надёжно: проверим фокус
|
||||
FOC=$(bspc query -N -n focused.window 2>/dev/null)
|
||||
if [ "$NODE" = "$FOC" ]; then
|
||||
bspc node "$NODE" -g hidden=on
|
||||
exit 0
|
||||
fi
|
||||
# toggle hidden state
|
||||
# попробуем прочитать флаг hidden через query -T (если доступно)
|
||||
if bspc query -T -n "$NODE" 2>/dev/null | grep -q '"hidden": true'; then
|
||||
bspc node "$NODE" -g hidden=off
|
||||
bspc node "$NODE" -d focused
|
||||
bspc node "$NODE" -f
|
||||
else
|
||||
bspc node "$NODE" -g hidden=on
|
||||
fi
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# если не найден — запустить
|
||||
~/.config/bspwm/scripts/nvim_notes.sh &
|
||||
Reference in New Issue
Block a user