bash: add completion for swaybar
This commit is contained in:
parent
3d7c20f062
commit
3b4cf3718b
44
completions/bash/swaybar
Normal file
44
completions/bash/swaybar
Normal file
|
@ -0,0 +1,44 @@
|
|||
# swaybar(1) completion
|
||||
|
||||
_swaybar()
|
||||
{
|
||||
local cur prev
|
||||
_get_comp_words_by_ref cur prev
|
||||
|
||||
short=(
|
||||
-h
|
||||
-v
|
||||
-s
|
||||
-b
|
||||
-d
|
||||
)
|
||||
|
||||
long=(
|
||||
--help
|
||||
--version
|
||||
--socket
|
||||
--bar_id
|
||||
--debug
|
||||
)
|
||||
|
||||
case $prev in
|
||||
-s|--socket)
|
||||
_filedir
|
||||
return
|
||||
;;
|
||||
-b|--bar_id)
|
||||
bars=($(swaymsg -t get_bar_config | sed -e '/^\[/,/\]$/{//d;s/^ *"\(.*\)",\?.*$/\1/}'))
|
||||
COMPREPLY=($(compgen -W "${bars[*]}" -- "$cur"))
|
||||
return
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ $cur == --* ]]; then
|
||||
COMPREPLY=($(compgen -W "${long[*]}" -- "$cur"))
|
||||
else
|
||||
COMPREPLY=($(compgen -W "${short[*]}" -- "$cur"))
|
||||
COMPREPLY+=($(compgen -W "${long[*]}" -- "$cur"))
|
||||
fi
|
||||
|
||||
} &&
|
||||
complete -F _swaybar swaybar
|
|
@ -213,6 +213,7 @@ endif
|
|||
if (get_option('bash-completions'))
|
||||
bash_files = files(
|
||||
'completions/bash/sway',
|
||||
'completions/bash/swaybar',
|
||||
'completions/bash/swayidle',
|
||||
'completions/bash/swaylock',
|
||||
'completions/bash/swaymsg',
|
||||
|
|
Loading…
Reference in a new issue