dotfiles/home/dot_config/wofi/executable_wofi-window-switch.sh
2026-04-06 01:21:30 +08:00

16 lines
448 B
Bash

#!/bin/bash
entries=$(swaymsg -t get_tree | jq -r -c '
recurse(.nodes[]?) |
recurse(.floating_nodes[]?) |
select(.type=="con"), select(.type=="floating_con") |
(.id | tostring) + " " + (.window_properties.class // .app_id) + ": " + .name')
echo "$entries"
selected=$(echo -e "$entries" | wofi --width 450 --height 350 --dmenu --cache-file /dev/null | awk '{print $1}')
if [ -n "$selected" ]; then
swaymsg "[con_id=$selected]" focus
fi