diff options
Diffstat (limited to 'completions/rpcdebug')
-rw-r--r-- | completions/rpcdebug | 27 |
1 files changed, 14 insertions, 13 deletions
diff --git a/completions/rpcdebug b/completions/rpcdebug index 6e2b88c..59778d9 100644 --- a/completions/rpcdebug +++ b/completions/rpcdebug @@ -1,46 +1,47 @@ # bash completion for rpcdebug -*- shell-script -*- -_rpcdebug_flags() +_comp_cmd_rpcdebug__flags() { local i module for ((i = 1; i < ${#words[@]}; i++)); do if [[ ${words[i]} == -m ]]; then - module=${words[i + 1]} + module=${words[i + 1]-} break fi done - if [[ -n $module ]]; then - COMPREPLY=($(compgen -W "$(rpcdebug -vh 2>&1 | - command sed -ne 's/^'$module'[[:space:]]\{1,\}//p')" -- "$cur")) + if [[ $module ]]; then + _comp_compgen_split -- "$(rpcdebug -vh 2>&1 | + command sed -ne 's/^'"$module"'[[:space:]]\{1,\}//p')" fi } -_rpcdebug() +_comp_cmd_rpcdebug() { - local cur prev words cword - _init_completion || return + local cur prev words cword comp_args + _comp_initialize -- "$@" || return case $prev in -*s) - _rpcdebug_flags + _comp_cmd_rpcdebug__flags return ;; -*c) - _rpcdebug_flags + _comp_cmd_rpcdebug__flags return ;; -*m) - COMPREPLY=($(compgen -W 'rpc nfs nfsd nlm' -- "$cur")) + _comp_compgen -- -W 'rpc nfs nfsd nlm' return ;; esac if [[ $cur == -* ]]; then - COMPREPLY=($(compgen -W '$(_parse_usage "$1" -h) -s -c' -- "$cur")) + _comp_compgen_usage -- -h + _comp_compgen -a -- -W '-s -c' fi } && - complete -F _rpcdebug rpcdebug + complete -F _comp_cmd_rpcdebug rpcdebug # ex: filetype=sh |