diff options
-rw-r--r-- | Completion/User/_zcat | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/Completion/User/_zcat b/Completion/User/_zcat new file mode 100644 index 000000000..378844511 --- /dev/null +++ b/Completion/User/_zcat @@ -0,0 +1,20 @@ +#compdef zcat + +(( $+_is_gnu )) || typeset -gA _is_gnu + +if (( ! $+_is_gnu[$words[1]] )); then + if [[ $(_call version $words[1] --license </dev/null 2>&1) = *GNU* ]] + then + _is_gnu[$words[1]]=yes + else + _is_gnu[$words[1]]= + fi +fi + +if [[ -n "$_is_gnu[$words[1]]" ]] +then + _gzip "$@" +else + _description files expl 'compressed file' + _files "$expl[@]" -g '*.Z' +fi |