diff --git a/contrib/unace b/contrib/unace index 9db7bd59..7d065c01 100644 --- a/contrib/unace +++ b/contrib/unace @@ -8,22 +8,16 @@ _unace() COMPREPLY=() cur=`_get_cword` - case "$cur" in - -*) - COMPREPLY=( $( compgen -W '-c -c- -f -f- -o -o- -p -y -y-' \ - -- "$cur" ) ) - ;; - *) + + if [[ "$cur" == -* ]] ; then + COMPREPLY=( $( compgen -W '-c -c- -f -f- -o -o- -p -y -y-' -- "$cur" ) ) + else if [ $COMP_CWORD -eq 1 ]; then COMPREPLY=( $( compgen -W 'e l t v x' -- "$cur" ) ) else _filedir '@(ace|ACE)' fi - ;; - esac - - return 0 - + fi } && complete -F _unace -o filenames unace diff --git a/contrib/unrar b/contrib/unrar index eecc8438..278b6a7b 100644 --- a/contrib/unrar +++ b/contrib/unrar @@ -8,22 +8,18 @@ _unrar() COMPREPLY=() cur=`_get_cword` - case "$cur" in - -*) + if [[ "$cur" == -* ]] ; then COMPREPLY=( $( compgen -W '-ad -ap -av- -c- -cfg- -cl -cu \ -dh -ep -f -idp -ierr -inul -kb -o+ -o- -ow -p -p- -r -ta \ -tb -tn -to -u -v -ver -vp -x -x@ -y' -- "$cur" ) ) - ;; - *) + else if [ $COMP_CWORD -eq 1 ]; then COMPREPLY=( $( compgen -W 'e l lb lt p t v vb vt x' -- "$cur" ) ) else _filedir '@(rar|RAR)' fi - ;; - esac + fi - return 0 } && complete -F _unrar -o filenames unrar diff --git a/contrib/yum-arch b/contrib/yum-arch index f28a9da0..fe70e77a 100644 --- a/contrib/yum-arch +++ b/contrib/yum-arch @@ -7,17 +7,11 @@ _yum_arch() COMPREPLY=() cur=`_get_cword` - case "$cur" in - -*) - COMPREPLY=( $( compgen -W '-d -v -vv -n -c -z -s -l \ - -q' -- "$cur" ) ) - ;; - *) - _filedir -d - ;; - esac - - return 0 + if [[ "$cur" == -* ]] ; then + COMPREPLY=( $( compgen -W '-d -v -vv -n -c -z -s -l -q' -- "$cur" ) ) + else + _filedir -d + fi } && complete -F _yum_arch -o filenames yum-arch