summaryrefslogtreecommitdiffstats
path: root/completions/badblocks
diff options
context:
space:
mode:
Diffstat (limited to 'completions/badblocks')
-rw-r--r--completions/badblocks17
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