summaryrefslogtreecommitdiff
path: root/completions/gzip
diff options
context:
space:
mode:
Diffstat (limited to 'completions/gzip')
-rw-r--r--completions/gzip15
1 files changed, 7 insertions, 8 deletions
diff --git a/completions/gzip b/completions/gzip
index 35e5f231..8093e41e 100644
--- a/completions/gzip
+++ b/completions/gzip
@@ -7,11 +7,11 @@ _gzip()
case $prev in
-b|--blocksize|-S|--suffix|-h|--help|-V|--version)
- return 0
+ return
;;
-p|--processes)
COMPREPLY=( $( compgen -W "{1..$(_ncpus)}" -- "$cur" ) )
- return 0
+ return
;;
esac
@@ -19,22 +19,21 @@ _gzip()
COMPREPLY=( $( compgen -W '$( _parse_help "$1" ) {-1..-9}' \
-- "$cur" ) )
[[ $COMPREPLY == *= ]] && compopt -o nospace
- return 0
+ return
fi
local IFS=$'\n' xspec="*.@(gz|t[ag]z)"
+ [[ ${1##*/} == pigz ]] && xspec="*.@([gz]z|t[ag]z)"
if [[ "$prev" == --* ]]; then
- [[ "$prev" == --decompress || \
- "$prev" == --list || \
- "$prev" == --test ]] && xspec="!"$xspec
+ [[ "$prev" == --@(decompress|list|test) ]] && xspec="!"$xspec
[[ "$prev" == --force ]] && xspec=
elif [[ "$prev" == -* ]]; then
[[ "$prev" == -*[dlt]* ]] && xspec="!"$xspec
[[ "$prev" == -*f* ]] && xspec=
fi
- _expand || return 0
+ _expand || return
compopt -o filenames
COMPREPLY=( $( compgen -f -X "$xspec" -- "$cur" ) \
@@ -42,4 +41,4 @@ _gzip()
} &&
complete -F _gzip gzip pigz
-# ex: ts=4 sw=4 et filetype=sh
+# ex: filetype=sh