diff options
Diffstat (limited to 'completions/bash')
-rw-r--r-- | completions/bash/swaybar | 44 | ||||
-rw-r--r-- | completions/bash/swayidle | 48 |
2 files changed, 44 insertions, 48 deletions
diff --git a/completions/bash/swaybar b/completions/bash/swaybar new file mode 100644 index 00000000..1e085c65 --- /dev/null +++ b/completions/bash/swaybar @@ -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 | jq -r '.[]')) + 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 diff --git a/completions/bash/swayidle b/completions/bash/swayidle deleted file mode 100644 index a0cdc8b2..00000000 --- a/completions/bash/swayidle +++ /dev/null @@ -1,48 +0,0 @@ -# swaymsg(1) completion - -_swayidle() -{ - local cur prev - _get_comp_words_by_ref -n : cur prev - local prev2=${COMP_WORDS[COMP_CWORD-2]} - local prev3=${COMP_WORDS[COMP_CWORD-3]} - - events=( - 'timeout' - 'before-sleep' - ) - - short=( - -h - -d - ) - - if [ "$prev" = timeout ]; then - # timeout <timeout> - return - elif [ "$prev2" = timeout ]; then - # timeout <timeout> <timeout command> - COMPREPLY=($(compgen -c -- "$cur")) - return - elif [ "$prev3" = timeout ]; then - # timeout <timeout> <timeout command> [resume <resume command>] - COMPREPLY=(resume) - # optional argument; no return here as user may skip 'resume' - fi - - case "$prev" in - resume) - COMPREPLY=($(compgen -c -- "$cur")) - return - ;; - before-sleep) - COMPREPLY=($(compgen -c -- "$cur")) - return - ;; - esac - - COMPREPLY+=($(compgen -W "${events[*]}" -- "$cur")) - COMPREPLY+=($(compgen -W "${short[*]}" -- "$cur")) - -} && -complete -F _swayidle swayidle |