diff options
Diffstat (limited to '')
-rw-r--r-- | completions/badblocks | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/completions/badblocks b/completions/badblocks index 29c4e00..14e4e05 100644 --- a/completions/badblocks +++ b/completions/badblocks @@ -1,29 +1,30 @@ # badblocks(8) completion -*- shell-script -*- -_badblocks() +_comp_cmd_badblocks() { - local cur prev words cword - _init_completion || return + local cur prev words cword comp_args + _comp_initialize -- "$@" || return case $prev in -*[bcedpt]) return ;; -*[io]) - _filedir + _comp_compgen_filedir return ;; esac if [[ $cur == -* ]]; then # Filter out -w (dangerous) and -X (internal use) - COMPREPLY=($(compgen -X -[wX] -W '$(_parse_usage "$1")' -- "$cur")) + _comp_compgen -R usage + ((${#COMPREPLY[@]})) && + _comp_compgen -- -X '-[wX]' -W '"${COMPREPLY[@]}"' return fi - cur=${cur:=/dev/} - _filedir + _comp_compgen -c "${cur:-/dev/}" filedir } && - complete -F _badblocks badblocks + complete -F _comp_cmd_badblocks badblocks # ex: filetype=sh |