diff options
Diffstat (limited to 'patchwork/bin/bash_completion')
-rw-r--r-- | patchwork/bin/bash_completion | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/patchwork/bin/bash_completion b/patchwork/bin/bash_completion new file mode 100644 index 0000000..a120a76 --- /dev/null +++ b/patchwork/bin/bash_completion @@ -0,0 +1,29 @@ +# Autocompletion for bash. + +_pwclient() { + local cur prev words cword split + + if declare -f _init_completion >/dev/null; then + _init_completion -s || return + else + cur=$(_get_cword) + prev=${COMP_WORDS[COMP_CWORD-1]} + fi + + case "${COMP_CWORD}" in + 0|1) return 0;; + esac + + projects="$(sed -r -e '/\[options\]/d;' \ + -e '/^\[(.+)\]$/!d;' \ + -e 's//\1/;' ~/.pwclientrc 2>/dev/null)" + + case "${prev}" in + -p) COMPREPLY=( $(compgen -W "${projects}" -- "${cur}" ) );; + esac + + return 0 +} +complete -F _pwclient pwclient + +# vim: ft=sh |