# pack200(1) completion -*- shell-script -*- _pack200() { local cur prev words cword split _init_completion -s || return case $prev in -S|--segment-limit|-P|--pass-file|-C|--class-attribute|\ -F|--field-attribute|-M|--method-attribute|-D|--code-attribute|\ '-?'|-h|--help|-V|--version|-J) return 0 ;; -E|--effort) COMPREPLY=( $( compgen -W '{0..9}' -- "$cur" ) ) return 0 ;; -H|--deflate-hint) COMPREPLY=( $( compgen -W 'true false keep' -- "$cur" ) ) return 0 ;; -m|--modification-time) COMPREPLY=( $( compgen -W 'latest keep' -- "$cur" ) ) return 0 ;; -U|--unknown-attribute) COMPREPLY=( $( compgen -W 'error strip pass' -- "$cur" ) ) return 0 ;; -f|--config-file) _filedir properties return 0 ;; -l|--log-file) COMPREPLY=( $( compgen -W '-' -- "$cur" ) ) _filedir log return 0 ;; -r|--repack) _filedir jar return 0 ;; esac $split && return # Check if a pack or a jar was already given. local i pack=false jar=false for (( i=0; i < ${#words[@]}-1; i++ )) ; do case ${words[i]} in *.pack|*.pack.gz) pack=true ;; *.jar) jar=true ;; esac done if ! $pack ; then if [[ "$cur" == -* ]] ; then COMPREPLY=( $( compgen -W '--no-gzip --gzip --strip-debug --no-keep-file-order --segment-limit= --effort= --deflate-hint= --modification-time= --pass-file= --unknown-attribute= --class-attribute= --field-attribute= --method-attribute= --code-attribute= --config-file= --verbose --quiet --log-file= --help --version -J --repack' -- "$cur" ) ) [[ $COMPREPLY == *= ]] && compopt -o nospace else _filedir 'pack?(.gz)' fi elif ! $jar ; then _filedir jar fi } && complete -F _pack200 pack200 # ex: ts=4 sw=4 et filetype=sh