diff --git a/completion/available/getopt.completion.bash b/completion/available/getopt.completion.bash index 45a10206..adc48a8d 100644 --- a/completion/available/getopt.completion.bash +++ b/completion/available/getopt.completion.bash @@ -1,32 +1,34 @@ -__getopt() { - local OPTIONS=('-a' '--alternative' - '-h' '--help' - '-l' '--longoptions' - '-n' '--name' - '-o' '--options' - '-q' '--quiet' - '-Q' '--quiet-output' - '-s' '--shell' - '-T' '--test' - '-u' '--unquoted' - '-V' '--version') +# shellcheck shell=bash - local SHELL_ARGS=('sh' 'bash' 'csh' 'tcsh') +function _getopt() { + local OPTIONS=('-a' '--alternative' + '-h' '--help' + '-l' '--longoptions' + '-n' '--name' + '-o' '--options' + '-q' '--quiet' + '-Q' '--quiet-output' + '-s' '--shell' + '-T' '--test' + '-u' '--unquoted' + '-V' '--version') - local current=$2 - local previous=$3 + local SHELL_ARGS=('sh' 'bash' 'csh' 'tcsh') - case $previous in - -s|--shell) - readarray -t COMPREPLY < <(compgen -W "${SHELL_ARGS[*]}" -- "$current") - ;; - -n|--name) - readarray -t COMPREPLY < <(compgen -A function -- "$current") - ;; - *) - readarray -t COMPREPLY < <(compgen -W "${OPTIONS[*]}" -- "$current") - ;; - esac + local current=$2 + local previous=$3 + + case $previous in + -s | --shell) + readarray -t COMPREPLY < <(compgen -W "${SHELL_ARGS[*]}" -- "$current") + ;; + -n | --name) + readarray -t COMPREPLY < <(compgen -A function -- "$current") + ;; + *) + readarray -t COMPREPLY < <(compgen -W "${OPTIONS[*]}" -- "$current") + ;; + esac } -complete -F __getopt getopt +complete -F _getopt getopt