More tar *[cr]*f completion improvements.
This commit is contained in:
parent
0ae464e580
commit
f973eb043c
@ -3,12 +3,12 @@
|
|||||||
have tar && {
|
have tar && {
|
||||||
_tar()
|
_tar()
|
||||||
{
|
{
|
||||||
local cur prev words ext regex tar untar
|
local cur prev words cword ext regex tar untar
|
||||||
|
|
||||||
COMPREPLY=()
|
COMPREPLY=()
|
||||||
_get_comp_words_by_ref cur prev words
|
_get_comp_words_by_ref cur prev words cword
|
||||||
|
|
||||||
if [ $COMP_CWORD -eq 1 ]; then
|
if [ $cword -eq 1 ]; then
|
||||||
COMPREPLY=( $( compgen -W 'c t x u r d A' -- "$cur" ) )
|
COMPREPLY=( $( compgen -W 'c t x u r d A' -- "$cur" ) )
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
@ -19,15 +19,19 @@ _tar()
|
|||||||
--*)
|
--*)
|
||||||
;;
|
;;
|
||||||
?(-)*[cr]*f)
|
?(-)*[cr]*f)
|
||||||
ext='@(tar|gem|spkg)'
|
if [[ $cword -eq 2 ]]; then
|
||||||
case ${words[1]} in
|
ext='@(tar|gem|spkg)'
|
||||||
*a*) ext="$tars" ;;
|
case ${words[1]} in
|
||||||
*z*) ext='t?(ar.)gz' ;;
|
*a*) ext="$tars" ;;
|
||||||
*Z*) ext='tar.Z' ;;
|
*z*) ext='t?(ar.)gz' ;;
|
||||||
*[jy]*) ext='t?(ar.)bz?(2)' ;;
|
*Z*) ext='tar.Z' ;;
|
||||||
*J*) ext='t?(ar.)xz' ;;
|
*[jy]*) ext='t?(ar.)bz?(2)' ;;
|
||||||
esac
|
*J*) ext='t?(ar.)xz' ;;
|
||||||
_filedir $ext
|
esac
|
||||||
|
_filedir $ext
|
||||||
|
else
|
||||||
|
_filedir
|
||||||
|
fi
|
||||||
return 0
|
return 0
|
||||||
;;
|
;;
|
||||||
+([^IZzJjy])f)
|
+([^IZzJjy])f)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user