mirror of
https://github.com/m-housh/dotfiles.git
synced 2026-02-14 06:12:34 +00:00
29 lines
615 B
Bash
Executable File
29 lines
615 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
# Launch or focus a window based on a pattern contained within the
|
|
# window class name.
|
|
|
|
pattern=$1
|
|
launchCmd=${@:2}
|
|
|
|
if [[ -z $pattern ]]; then
|
|
echo "Error: Must supply a pattern to match the window class."
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z $launchCmd ]]; then
|
|
echo "Error: Must supply a launch command to match the window class."
|
|
exit 1
|
|
fi
|
|
|
|
address=$(hyprctl clients -j | jq -r ".[] | select(.class | contains(\"$pattern\")) | .address")
|
|
|
|
echo "Pattern: $pattern"
|
|
echo "Address: $address"
|
|
|
|
if [[ -n $address ]]; then
|
|
hyprctl dispatch focuswindow "address:$address"
|
|
else
|
|
eval exec $launchCmd
|
|
fi
|