diff options
Diffstat (limited to '')
-rw-r--r-- | completions/groupadd | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/completions/groupadd b/completions/groupadd index 5f67f29..fe4e600 100644 --- a/completions/groupadd +++ b/completions/groupadd @@ -1,26 +1,28 @@ # groupadd(8) completion -*- shell-script -*- -_groupadd() +_comp_cmd_groupadd() { - local cur prev words cword split - _init_completion -s || return + local cur prev words cword was_split comp_args + _comp_initialize -s -- "$@" || return # TODO: if -o/--non-unique is given, could complete on existing gids # with -g/--gid + local noargopts='!(-*|*[gKp]*)' + # shellcheck disable=SC2254 case $prev in - --gid | --key | --password | -!(-*)[gKp]) + --gid | --key | --password | -${noargopts}[gKp]) return ;; esac - $split && return + [[ $was_split ]] && return if [[ $cur == -* ]]; then - COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + _comp_compgen_help [[ ${COMPREPLY-} == *= ]] && compopt -o nospace fi } && - complete -F _groupadd groupadd + complete -F _comp_cmd_groupadd groupadd # ex: filetype=sh |