diff options
Diffstat (limited to 'shell-completion/getopt')
-rw-r--r-- | shell-completion/getopt | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/shell-completion/getopt b/shell-completion/getopt new file mode 100644 index 000000000..ea8c8e2b6 --- /dev/null +++ b/shell-completion/getopt @@ -0,0 +1,34 @@ +_getopt_module() +{ + local cur prev OPTS + COMPREPLY=() + cur="${COMP_WORDS[COMP_CWORD]}" + prev="${COMP_WORDS[COMP_CWORD-1]}" + case $prev in + '-l'|'--longoptions') + COMPREPLY=( $(compgen -W "longopts" -- $cur) ) + return 0 + ;; + '-n'|'--name') + COMPREPLY=( $(compgen -W "name" -- $cur) ) + return 0 + ;; + '-o'|'--options') + COMPREPLY=( $(compgen -W "optstring" -- $cur) ) + return 0 + ;; + '-s'|'--shell') + COMPREPLY=( $(compgen -W "sh bash csh tcsh" -- $cur) ) + return 0 + ;; + esac + case $cur in + -*) + OPTS="-a --alternative -h --help -l --longoptions -n --name -o --options -q --quiet -Q --quiet-output -s --shell -T --test -u --unquote -V --version" + COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) ) + return 0 + ;; + esac + return 0 +} +complete -F _getopt_module getopt |