initial commit
This commit is contained in:
commit
6be364d614
|
@ -0,0 +1,32 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# dependency - xtitle
|
||||||
|
|
||||||
|
# arguments:
|
||||||
|
# none - select from windows on current desktop
|
||||||
|
# 'monitor' - select from all windows.
|
||||||
|
# 'all' - select from all windows.
|
||||||
|
|
||||||
|
. "$HOME/.config/dmenu/dmenurc"
|
||||||
|
|
||||||
|
if command -v bspc ; then
|
||||||
|
# adapted from: https://www.reddit.com/r/bspwm/comments/er2olp/dmenu_window_picker/ff16ff0/
|
||||||
|
# NOTE: query can be '.window', '.local.window', '.local.tiled' (to only have tiled windows
|
||||||
|
# as options) or '.local.window.!fullscreen.!floating' (to only have tiled and pseudo_tiled windows as options).
|
||||||
|
if [ "$1" = all ] ; then
|
||||||
|
ids=($(bspc query -N -n ".window"))
|
||||||
|
elif [ "$1" = monitor ] ; then
|
||||||
|
ids=($(bspc query -N -m "focused"))
|
||||||
|
else
|
||||||
|
# current desktop
|
||||||
|
ids=($(bspc query -N -n ".local.window"))
|
||||||
|
fi
|
||||||
|
options="$(xtitle "${ids[@]}" | awk '{ print ++i": "$0 }')"
|
||||||
|
|
||||||
|
[[ -n "$options" ]] || exit
|
||||||
|
|
||||||
|
id_index="$(<<< "$options" dmenu $DMENU_OPTIONS -l 20 | cut -d: -f1)"
|
||||||
|
[[ -n "$id_index" ]] || exit
|
||||||
|
bspc node "${ids[$((id_index - 1))]}" -f
|
||||||
|
|
||||||
|
fi
|
Loading…
Reference in New Issue