diff options
Diffstat (limited to 'completions/jpegoptim')
-rw-r--r-- | completions/jpegoptim | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/completions/jpegoptim b/completions/jpegoptim index c366972..7409854 100644 --- a/completions/jpegoptim +++ b/completions/jpegoptim @@ -1,38 +1,40 @@ # jpegoptim(1) completion -*- shell-script -*- -_jpegoptim() +_comp_cmd_jpegoptim() { - 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='!(-*|*[dmTS]*)' + # shellcheck disable=SC2254 case $prev in - --help | --version | -!(-*)[hV]*) + --help | --version | -${noargopts}[hV]*) return ;; - --dest | -!(-*)d) - _filedir -d + --dest | -${noargopts}d) + _comp_compgen_filedir -d return ;; - --max | --threshold | -!(-*)[mT]) - COMPREPLY=($(compgen -W '{0..100}' -- "$cur")) + --max | --threshold | -${noargopts}[mT]) + _comp_compgen -- -W '{0..100}' return ;; - --size | -!(-*)S) - COMPREPLY=($(compgen -W '{1..99}%' -- "$cur")) + --size | -${noargopts}S) + _comp_compgen -- -W '{1..99}%' return ;; esac - $split && return + [[ $was_split ]] && return if [[ $cur == -* ]]; then - COMPREPLY=($(compgen -W '$(_parse_help "$1")' -- "$cur")) + _comp_compgen_help [[ ${COMPREPLY-} == *= ]] && compopt -o nospace return fi - _filedir 'jp?(e)g' + _comp_compgen_filedir 'jp?(e)g' } && - complete -F _jpegoptim jpegoptim + complete -F _comp_cmd_jpegoptim jpegoptim # ex: filetype=sh |