diff options
Diffstat (limited to 'completions/idn')
-rw-r--r-- | completions/idn | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/completions/idn b/completions/idn index 8023f8f..1a61479 100644 --- a/completions/idn +++ b/completions/idn @@ -1,26 +1,28 @@ # idn(1) completion -*- shell-script -*- -_idn() +_comp_cmd_idn() { - local cur prev words cword split - _init_completion -s || return + local cur prev words cword was_split comp_args + _comp_initialize -s -- "$@" || return + local noargopts='!(-*|*[p]*)' + # shellcheck disable=SC2254 case $prev in - --help | --version | -!(-*)[hV]) + --help | --version | -${noargopts}[hV]) return ;; - --profile | -!(-*)p) - COMPREPLY=($(compgen -W 'Nameprep iSCSI Nodeprep Resourceprep - trace SASLprep' -- "$cur")) + --profile | -${noargopts}p) + _comp_compgen -- -W 'Nameprep iSCSI Nodeprep Resourceprep trace + SASLprep' return ;; esac - if ! $split && [[ $cur == -* ]]; then - COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + if [[ ! $was_split && $cur == -* ]]; then + _comp_compgen_help [[ ${COMPREPLY-} == *= ]] && compopt -o nospace fi } && - complete -F _idn idn + complete -F _comp_cmd_idn idn # ex: filetype=sh |