swaybar (693B) - View raw
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44# swaybar(1) completion _swaybar() { local cur prev short long _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