about summary refs log tree commit diff
path: root/Completion
diff options
context:
space:
mode:
authorOliver Kiddle <opk@users.sourceforge.net>2001-04-01 16:19:15 +0000
committerOliver Kiddle <opk@users.sourceforge.net>2001-04-01 16:19:15 +0000
commitb9c58a73ac2eace89340b268db852c8a158bd707 (patch)
treeca4e713df765174bc90fcc2e8c2a3be9288905de /Completion
parente6be1f76cf77a63dd79dbe3d6eea62815caa87ab (diff)
downloadzsh-b9c58a73ac2eace89340b268db852c8a158bd707.tar.gz
zsh-b9c58a73ac2eace89340b268db852c8a158bd707.tar.xz
zsh-b9c58a73ac2eace89340b268db852c8a158bd707.zip
various doc fixes and minor completion function changes, most of which
are to use the -A "-*" and -S options to _arguments (13863)
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Builtins/_bindkey39
-rw-r--r--Completion/Builtins/_compdef2
-rw-r--r--Completion/Builtins/_disable2
-rw-r--r--Completion/Builtins/_emulate2
-rw-r--r--Completion/Builtins/_enable2
-rw-r--r--Completion/Builtins/_fc45
-rw-r--r--Completion/Builtins/_hash4
-rw-r--r--Completion/Builtins/_print2
-rw-r--r--Completion/Builtins/_read2
-rw-r--r--Completion/Builtins/_unhash4
-rw-r--r--Completion/Builtins/_vars_eq2
-rw-r--r--Completion/Builtins/_which8
-rw-r--r--Completion/Builtins/_zcompile12
-rw-r--r--Completion/Builtins/_zle4
-rw-r--r--Completion/Builtins/_zpty4
-rw-r--r--Completion/Builtins/_zstyle9
-rw-r--r--Completion/User/_bison10
-rw-r--r--Completion/User/_bzip24
-rw-r--r--Completion/User/_dirs2
-rw-r--r--Completion/User/_fetchmail2
-rw-r--r--Completion/User/_gzip2
21 files changed, 92 insertions, 71 deletions
diff --git a/Completion/Builtins/_bindkey b/Completion/Builtins/_bindkey
index 048d517f2..45471feb5 100644
--- a/Completion/Builtins/_bindkey
+++ b/Completion/Builtins/_bindkey
@@ -7,31 +7,34 @@
 #
 # Where appropriate, will complete keymaps instead of widgets.
 
-local state expl line curcontext="$curcontext"
+local state expl line curcontext="$curcontext" ret=1
 typeset -A opt_args
 
-_arguments -C -s \
-  '(-v -a -M -l -D -A -N)-e[select emacs keymap and bind it to main]' \
-  '(-e -a -M -l -D -A -N)-v[select viins keymap and bind it to main]' \
-  '(-e -v -M -l -D -A -N)-a[select vicmd keymap]' \
-  '(-e -v -a -l -D -A -N)-M[specify keymap to select]:keymap:->keymap' \
-  '(-e -v -a -M -D -A -N -m -r -s -R *)-l[list existing keymap names]' \
+_arguments -C -s -S \
+  '(-v -a -M -l -D -A -N -p)-e[select emacs keymap and bind it to main]' \
+  '(-e -a -M -l -D -A -N -p)-v[select viins keymap and bind it to main]' \
+  '(-e -v -M -l -D -A -N -p)-a[select vicmd keymap]' \
+  '(-e -v -a -l -D -A -N -p)-M[specify keymap to select]:keymap:->keymap' \
+  '(-e -v -a -M -D -A -N -m -p -r -s -R *)-l[list existing keymap names]' \
   '(-e -v -a -d -A -N -m -r -s -R *)-L[output in form of bindkey commands]' \
-  '(-e -v -a -l -D -A -N -m -r -s -R *)-d[delete existing keymaps and reset to default state]' \
-  '(-e -v -a -M -l -d -A -N -m -r -s -R *)-D[delete named keymaps]:*:keymap:->keymap' \
-  '(-e -v -a -M -l -L -d -D -N -m -r -s -R *)-A[create alias to keymap]:old-keymap:->keymap:new-keymap:->keymap' \
-  '(-e -v -a -M -l -L -d -D -A -m -r -s -R *)-N[create new keymap]:new-keymap:->keymap:old-keymap to copy:->keymap' \
-  '(-l -L -d -D -A -N -r -s -r -R *)-m[add builtin meta-key bindings to selected keymape]' \
-  '(-l -L -d -D -A -N -m -s *)-r[unbind specified in-strings]:*:in-string' \
-  '(-l -L -d -D -A -N -m -r *)-s[bind each in-string to each out-string]:*:key string' \
-  '(-e -v -a -M -l -L -d -D -A -N -m)-R[interpret in-strings as ranges]' \
-  '(-l -L -d -A -N -m -r -s)*::widgets:->widget' && return 0
+  '(-e -v -a -l -D -A -N -m -p -r -s -R *)-d[delete existing keymaps and reset to default state]' \
+  '(-e -v -a -M -l -d -A -N -m -p -r -s -R *)-D[delete named keymaps]:*:keymap:->keymap' \
+  '(-e -v -a -M -l -L -d -D -N -m -p -r -s -R *)-A[create alias to keymap]:old-keymap:->keymap:new-keymap:->keymap' \
+  '(-e -v -a -M -l -L -d -D -A -m -p -r -s -R *)-N[create new keymap]:new-keymap:->keymap:old-keymap to copy:->keymap' \
+  '(-l -L -d -D -A -N -p -r -s -r -R *)-m[add builtin meta-key bindings to selected keymape]' \
+  '(-e -v -a -M -d -D -A -N -m -r -s -R *)-p[list bindings which have given key sequence as a prefix]:key sequence' \
+  '(-l -L -d -D -A -N -m -p -s *)-r[unbind specified in-strings]:*:in-string' \
+  '(-l -L -d -D -A -N -m -p -r *)-s[bind each in-string to each out-string]:*:key string' \
+  '(-e -v -a -M -l -L -d -D -A -N -m -p)-R[interpret in-strings as ranges]' \
+  '(-l -L -d -A -N -m -p -r -s)*::widgets:->widget' && ret=0
 
 case $state in
   keymap)
-    _wanted -C -M keymaps expl keymap compadd -a keymaps
+    _wanted -C -M keymaps expl keymap compadd -a keymaps && ret=0
   ;;
   widget)
-    _wanted widgets expl widget compadd -M 'r:|-=* r:|=*' -k widgets
+    _wanted widgets expl widget compadd -M 'r:|-=* r:|=*' -k widgets && ret=0
   ;;
 esac
+
+return ret
diff --git a/Completion/Builtins/_compdef b/Completion/Builtins/_compdef
index ab7c30e92..eb1a2ebb6 100644
--- a/Completion/Builtins/_compdef
+++ b/Completion/Builtins/_compdef
@@ -3,7 +3,7 @@
 local state line expl list disp curcontext="$curcontext"
 typeset -A opt_args
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
   '(-d)-a[make function autoloadable]' \
   '(-d -p -P)-n[leave existing definitions intact]' \
   ':completion function:->cfun' \
diff --git a/Completion/Builtins/_disable b/Completion/Builtins/_disable
index b3c2632ed..0e27944c9 100644
--- a/Completion/Builtins/_disable
+++ b/Completion/Builtins/_disable
@@ -1,6 +1,6 @@
 #compdef disable
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
   "(-f -r)-a[act on aliases]:*:aliases:(${(k)aliases} ${(k)galiases})" \
   "(-a -r)-f[act on functions]:*:functions:(${(k)functions})" \
   "(-a -f)-r[act on reserved words]:*:reserved-words:(${(k)reswords})" \
diff --git a/Completion/Builtins/_emulate b/Completion/Builtins/_emulate
index 1c1f63cde..e562d6834 100644
--- a/Completion/Builtins/_emulate
+++ b/Completion/Builtins/_emulate
@@ -1,6 +1,6 @@
 #compdef emulate
 
-_arguments -C -s \
+_arguments -C -s -A "-*" \
   '-L[set local_options and local_traps as well]' \
   '-R[reset all options instead of only those needed for script portability]' \
   '::shell to emulate:(zsh sh ksh csh)'
diff --git a/Completion/Builtins/_enable b/Completion/Builtins/_enable
index 991286276..527423b3c 100644
--- a/Completion/Builtins/_enable
+++ b/Completion/Builtins/_enable
@@ -1,6 +1,6 @@
 #compdef enable
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
   "(-f -r)-a[act on aliases]:*:aliases:(${(k)dis_aliases})" \
   "(-a -r)-f[act on functions]:*:functions:(${(k)dis_functions})" \
   "(-a -f)-r[act on reserved words]:*:reserved-words:(${(k)dis_reswords})" \
diff --git a/Completion/Builtins/_fc b/Completion/Builtins/_fc
index cb3efe48f..40d88db27 100644
--- a/Completion/Builtins/_fc
+++ b/Completion/Builtins/_fc
@@ -1,27 +1,36 @@
-#compdef fc history
+#compdef fc history r
 
-local fc_common
+local expl fc_common fc_hist fc_r
 
-fc_common=( \
-  '(-A -R -W -I)-m[treat first argument as a pattern]' \
-  '(-A -R -W -I)-r[reverse order of the commands]' \
-  '(-A -R -W -I -e)-n[suppress line numbers]' \
-  '(-A -R -W -I -e -f -E -i)-d[print time-stamps]' \
-  '(-A -R -W -I -e -d -E -i)-f[mm/dd/yyyy format time-stamps]' \
-  '(-A -R -W -I -e -d -f -i)-E[dd.mm.yyyy format time-stamps]' \
-  '(-A -R -W -I -e -d -f -E)-i[yyyy-mm-dd format time-stamps]' \
-  '(-A -R -W -I -e)-D[print elapsed times]' \
+fc_common=(
+  '(-A -R -W -I)-r[reverse order of the commands]'
+  '(-A -R -W -I -e)-n[suppress line numbers]'
   '(-A -R -W -I)*::commands:_command_names -e' )
 
-if [[ $service = *history ]]; then
-  _arguments -C -s "$fc_common[@]"
-else
-  _arguments -C -s \
-    '(-A -R -W -I -e)-l[list resulting commands on stdout]' \
+fc_hist=( \
+  '(-A -R -W -I)-m[treat first argument as a pattern]'
+  '(-A -R -W -I -e -f -E -i)-d[print time-stamps]'
+  '(-A -R -W -I -e -d -E -i)-f[mm/dd/yyyy format time-stamps]'
+  '(-A -R -W -I -e -d -f -i)-E[dd.mm.yyyy format time-stamps]'
+  '(-A -R -W -I -e -d -f -E)-i[yyyy-mm-dd format time-stamps]'
+  '(-A -R -W -I -e)-D[print elapsed times]' )
+
+fc_r='(-A -R -W -I -e)-l[list resulting commands on stdout]'
+
+case $service in
+  history)
+    _arguments -C -s -S "$fc_common[@]" "$fc_hist[@]" && return 0
+  ;;
+  r)
+    _arguments -C -s -S "$fc_common[@]" "$fc_r" && return 0
+  ;;
+  *)
+  _arguments -C -s -S \
     '(-A -R -W -I -l -n -d -f -E -i -D)-e[specify editor to invoke]:editor to invoke:_command_names -e' \
     '(-l -m -e -r -n -d -f -E -i -D -A -W *)-R[read history from file]:history file:_files' \
     '(-l -m -e -r -n -d -f -E -i -D -R -W *)-A[append history to file]:history file:_files' \
     '(-l -m -e -r -n -d -f -E -i -D -R -A *)-W[write history to file]:history file:_files' \
     '(-l -m -e -r -n -d -f -E -i -D -A -W *)-I[read/write new events only]:history file:_files' \
-    "$fc_common[@]"
-fi
+    "$fc_common[@]" "$fc_hist[@]" "$fc_r" && return 0
+  ;;
+esac
diff --git a/Completion/Builtins/_hash b/Completion/Builtins/_hash
index 8d7e51503..4b2a8a6ca 100644
--- a/Completion/Builtins/_hash
+++ b/Completion/Builtins/_hash
@@ -9,13 +9,13 @@ common_args=( \
 
 case ${service} in
   hash)
-    _arguments -C -s \
+    _arguments -C -s -S \
       '(-f -m -v)-r[empty hash table]' \
       '(-f -r)-m[treat arguments as patterns]' \
       '(-f -r -m)-v[list entires as they are added]' \
       '(-f -r -v)-L[list in the form of calls to hash]' \
       "${common_args[@]}" \
-      '(-d -f -r -m -v)*:hash:->hashval' && return 0
+      '(-d -f -r -m -v -L)*:hash:->hashval' && return 0
   ;;
   rehash)
     _arguments -C -s ${common_args[@]} && return 0
diff --git a/Completion/Builtins/_print b/Completion/Builtins/_print
index 11b089a14..76b39f613 100644
--- a/Completion/Builtins/_print
+++ b/Completion/Builtins/_print
@@ -9,7 +9,7 @@ eflag="${words[1,CURRENT-1][(r)-*R*]:+-e[enable escapes]}"
 (:>&p) 2>/dev/null &&
   pflag='(-s -u -z)-p[print arguments to input of coprocess]'
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
   '-r[ignore escape conventions of echo]' \
   '(-r -b -m -s -l -N -o -O -i -c -u -p -z -D -P)-R[emulate BSD echo (no escapes, -n & -e flags only)]' \
   '-b[recognise bindkey escape sequences]' \
diff --git a/Completion/Builtins/_read b/Completion/Builtins/_read
index a648701d9..e49336475 100644
--- a/Completion/Builtins/_read
+++ b/Completion/Builtins/_read
@@ -6,7 +6,7 @@ local pflag expl line curcontext="$curcontext"
 (:>&p) 2>/dev/null &&
   pflag='(-q -u -z)-p[input is read from the coprocess]'
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
   '-r[raw mode]' \
   '(-p -k -u -z)-q[read y or n character from terminal]' \
   '(-q)-k[specify number of characters to read]:number of characters' \
diff --git a/Completion/Builtins/_unhash b/Completion/Builtins/_unhash
index 927511887..bf74f07c7 100644
--- a/Completion/Builtins/_unhash
+++ b/Completion/Builtins/_unhash
@@ -2,12 +2,12 @@
 
 local expl state line curcontext="$curcontext"
 
-_arguments -C -s \
+_arguments -C -s -S \
   '(-a -f *)-d[remove named directories]:*:named directory:->nameddir' \
   '(-d -f *)-a[remove aliases]:*:aliases:_aliases' \
   '(-d -a *)-f[remove functions]:*:functions:_functions' \
   '-m[treat arguments as patterns]' \
-  '*:commands: _command_names -e' && return 0
+  '(-a -d -f -m)*:commands: _command_names -e' && return 0
 
 [[ "$state" = nameddir ]] &&
   _wanted named-directories expl 'named directory' compadd -k nameddirs
diff --git a/Completion/Builtins/_vars_eq b/Completion/Builtins/_vars_eq
index 8bc8e6e63..c49066a2c 100644
--- a/Completion/Builtins/_vars_eq
+++ b/Completion/Builtins/_vars_eq
@@ -53,7 +53,7 @@ for ((i=1;i<=$#use;++i)); do
       ${allargs[${use[$i]}${${(s::)use[$i]}[(r)[Uut]]:+$func}]} )
 done
 
-_arguments -C -s "${args[@]}" '*:vars:->vars_eq'
+_arguments -C -s -A "-*" -S "${args[@]}" '*:vars:->vars_eq'
 
 if [[ "$state" = vars_eq ]]; then
   if [[ $func = f ]]; then
diff --git a/Completion/Builtins/_which b/Completion/Builtins/_which
index da78b9358..ab6caeba7 100644
--- a/Completion/Builtins/_which
+++ b/Completion/Builtins/_which
@@ -13,14 +13,14 @@ aarg='-a[print all occurences in path]'
 
 case ${service} in
   whence)
-    _arguments -C -s \
+    _arguments -C -s -A "-*" -S \
       '(-c -w)-v[verbose output]' \
       '(-v -w)-c[csh-like output]' \
       "${cargs[@]}" "$farg" "$aarg" && return 0
   ;;
-  where) _arguments -C -s "${cargs[@]}" && return 0;;
-  which) _arguments -C -s "${cargs[@]}" "$aarg" && return 0;;
-  type) _arguments -C -s "${cargs[@]}" "$aarg" "$farg" && return 0;;
+  where) _arguments -C -s -A "-*" -S "${cargs[@]}" && return 0;;
+  which) _arguments -C -s -A "-*" -S "${cargs[@]}" "$aarg" && return 0;;
+  type) _arguments -C -s -A "-*" -S "${cargs[@]}" "$aarg" "$farg" && return 0;;
 esac
 
 if [[ "$state" = command ]]; then
diff --git a/Completion/Builtins/_zcompile b/Completion/Builtins/_zcompile
index e9b9c60eb..2d8e6d033 100644
--- a/Completion/Builtins/_zcompile
+++ b/Completion/Builtins/_zcompile
@@ -1,9 +1,9 @@
 #compdef zcompile
 
-local state line expl curcontext="$curcontext"
+local state line expl curcontext="$curcontext" ret=1
 typeset -A opt_args
 
-_arguments -C -s \
+_arguments -C -s -A "-*" -S \
     '(-t -c -m -a)-U[don'\''t expand aliases]' \
     '(-t -M)-R[mark as read]' \
     '(-t -R)-M[mark as mapped]' \
@@ -14,11 +14,13 @@ _arguments -C -s \
     '(-t -U -z -k)-a[write autoload functions]' \
     '(-M -R -U -z -k -a -c -m)-t[show table of contents]' \
     ':zwc file:_files' \
-    '*:function:->function' && return 0
+    '*:function:->function' && ret=0
 
 if (( $+opt_args[-c] )); then
-  _wanted functions expl 'function to write' compadd -k functions
+  _wanted functions expl 'function to write' compadd -k functions && ret=0
 else
   _description files expl 'zsh source file'
-  _files "$expl[@]"
+  _files "$expl[@]" && ret=0
 fi
+
+return ret
diff --git a/Completion/Builtins/_zle b/Completion/Builtins/_zle
index 8a84b3697..2d707a22c 100644
--- a/Completion/Builtins/_zle
+++ b/Completion/Builtins/_zle
@@ -15,7 +15,7 @@ compwids=(accept-and-menu-complete
 
 opts=(-A -C -D -L -M -N -R -U -a -c -l \* :)
 
-_arguments -s \
+_arguments -s -S \
     "($opts)-A[define widget alias]:old widget:->widget :new widget:->widget" \
     "($opts)-C[define completion widget]:new widget name:->comp-widget :completion widget:->builtin-comp-widget :widget shell function:->function" \
     "($opts)-D[delete widget]:*:widget:->widget" \
@@ -30,7 +30,7 @@ _arguments -s \
     '(-)::widget name:->call'
 
 [[ $state == listing ]] &&
-  _arguments -s \
+  _arguments -s -S \
     "-l[list user-defined widgets]" \
     "(-a)-L[list as commands]" \
     "(-L)-a[list all widgets]" \
diff --git a/Completion/Builtins/_zpty b/Completion/Builtins/_zpty
index b7e355149..4a02952f7 100644
--- a/Completion/Builtins/_zpty
+++ b/Completion/Builtins/_zpty
@@ -4,7 +4,7 @@ local state line list names expl curcontext="$curcontext"
 typeset -A opt_args
 
 
-_arguments -C -s \
+_arguments -C -s -S \
   '(-r -w -L -d)-e[echo input characters]' \
   '(-r -w -L -d)-b[io to pseudo-terminal blocking]' \
   '(-r -w -L -e -b)-d[delete command]:*:name:->name' \
@@ -17,7 +17,7 @@ _arguments -C -s \
 
 # One could use sets, but that's more expensive and zpty is simple enough.
 #
-# _arguments -C -s \
+# _arguments -C -s -S \
 #   - read \
 #     '-r[read string from command]' \
 #     ':name:->name' \
diff --git a/Completion/Builtins/_zstyle b/Completion/Builtins/_zstyle
index 6a6d5787d..003ec4d9f 100644
--- a/Completion/Builtins/_zstyle
+++ b/Completion/Builtins/_zstyle
@@ -17,12 +17,17 @@ styles=(
   avoid-completer        c:
   break-keys             c:
   cache-path		 'c:_wanted directories expl directory _path_files -/'
+  cache-policy           c:_functions
+  call-command           c:bool
   command                c:command
+  commands               c:
+  complete               c:bool
   completer		 c:completer
   completions		 c:bool
   condition		 c:bool
   cursor		 c:cursor
   disable-stat		 c:bool
+  disabled               c:bool
   domains                c:
   expand		 c:
   fake-files		 c:fake-files
@@ -32,6 +37,7 @@ styles=(
   force-list             c:
   format		 c:
   glob			 c:bool
+  global                 c:bool
   group-name		 c:
   group-order		 c:tag
   groups		 c:_groups
@@ -69,7 +75,8 @@ styles=(
   ports			 c:_ports
   prefix-hidden		 c:bool
   prefix-needed		 c:bool
-  prompt		 c:
+  range                  c:
+  regular                c:bool
   remote-access		 c:bool
   remove-all-dups	 c:bool
   select-prompt          c:
diff --git a/Completion/User/_bison b/Completion/User/_bison
index 000235f6f..350847cdd 100644
--- a/Completion/User/_bison
+++ b/Completion/User/_bison
@@ -1,20 +1,20 @@
 #compdef bison
 
-_arguments -s \
-  '(--file-prefix)-b[specify output file prefix]:output file prefix:' \
+_arguments -s -S \
+  '(--file-prefix)-b+[specify output file prefix]:output file prefix:' \
   '(--defines)-d[write token definition file]' \
   '(--raw)-r[output bison token numbers]' \
   '(--token-table)-k[output token table]' \
   '(--no-lines)-l[don'"'"'t generate #line directives]' \
   '(--no-parser)-n[don'"'"'t generate parse (only declarations)]' \
-  '(--output-file)-o[specify parser output file name]:parser file name:_files' \
-  '(--name-prefix)-p[change yy prefix]:prefix string:' \
+  '(--output-file)-o+[specify parser output file name]:parser file name:_files' \
+  '(--name-prefix)-p+[change yy prefix]:prefix string:' \
   '(--debug)-t[output YYDEBUG definition]' \
   '(--verbose)-v[verbose mode]' \
   '(--version)-V[show version]' \
   '(--help)-h[show help]' \
   '(--yacc --fixed-output-file)-y[imitate yacc'"'"'s output file convention]' \
-  ':input file:_files -g \*.\(\#i\)\(bison\|yacc\)' \
+  ':input file:_files -g \*.\(\#i\)\(bison\|yacc\|y\)' \
   -- \
   '*=outfile:parser file name:_files' \
   '*file-prefix=prefix:output file prefix:' \
diff --git a/Completion/User/_bzip2 b/Completion/User/_bzip2
index cbb231c4d..951f85996 100644
--- a/Completion/User/_bzip2
+++ b/Completion/User/_bzip2
@@ -6,7 +6,7 @@ typeset -A opt_args
 case "$service" in
   bzip2recover) [[ $CURRENT = 2 ]] && state=files;;
   bzip2) decompress=no;&
-  bunzip2) _arguments -C -s \
+  bunzip2) _arguments -C -s -S \
     '(--help)-h[display help message]' \
     '(-h)--help[display help message]' \
     '(--decompress --compress -z --test -t)-d[decompress]' \
@@ -47,7 +47,7 @@ if [[ "$state" = files ]]; then
   (( $+opt_args[-z] || $+opt_args[--compress] )) && decompress=no
   (( $+opt_args[-d] || $+opt_args[--decompress] || $+opt_args[-t] ||
       $+opt_args[--test] )) && unset decompress
-  if [[ -z "$decompress" ]] ; then
+  if [[ -z "$decompress" ]]; then
     _description files expl 'compressed file'
     _files "$expl[@]" -g '*.bz2' && return 0
   else
diff --git a/Completion/User/_dirs b/Completion/User/_dirs
index 04c4b75d9..40d027188 100644
--- a/Completion/User/_dirs
+++ b/Completion/User/_dirs
@@ -1,3 +1,3 @@
-#compdef rmdir df du dircmp
+#compdef rmdir df du dircmp dirs
 
 _files -/
diff --git a/Completion/User/_fetchmail b/Completion/User/_fetchmail
index 0f9095107..31a92d984 100644
--- a/Completion/User/_fetchmail
+++ b/Completion/User/_fetchmail
@@ -1,6 +1,6 @@
 #compdef fetchmail
 
-_arguments \
+_arguments -S \
   {--bsmtp,'(--logfile)-L','(-L)--logfile','(--fetchmailrc)-f','(-f)--fetchmailrc','(--idfile)-i','(-i)--idfile'}':file:_files' \
   {--plugin,--plugout,'(--mda)-m','(-m)--mda'}':command:_command_names -e' \
   {'(--username)-u','(-u)--username'}:user:_users \
diff --git a/Completion/User/_gzip b/Completion/User/_gzip
index f5fad3c06..dc0399071 100644
--- a/Completion/User/_gzip
+++ b/Completion/User/_gzip
@@ -8,7 +8,7 @@ gunzip|zcat)
   decompress=yes
   ;&
 gzip)
-  _arguments -C -s \
+  _arguments -C -s -S \
     '(--to-stdout --stdout)-c[write on standard output]' \
     '(-c --stdout)--to-stdout[write on standard output]' \
     '(-c --to-stdout)--stdout[write on standard output]' \