about summary refs log tree commit diff
path: root/Completion/User
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-03 14:44:01 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2000-05-03 14:44:01 +0000
commitaa0381bd2b64ad6ea1e24110c1c2ec6773f9288e (patch)
treef9b2e23776f0510c2cb771bb882d5731b0a3b289 /Completion/User
parent17e79c01575b26e28e5f978d99cff250a6d9e63b (diff)
downloadzsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.tar.gz
zsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.tar.xz
zsh-aa0381bd2b64ad6ea1e24110c1c2ec6773f9288e.zip
allow `-' in exclusion lists for _arguments, to avoid completing all options (11121)
Diffstat (limited to 'Completion/User')
-rw-r--r--Completion/User/_fakeroot3
-rw-r--r--Completion/User/_rlogin2
-rw-r--r--Completion/User/_ssh2
-rw-r--r--Completion/User/_sudo28
-rw-r--r--Completion/User/_xargs12
5 files changed, 27 insertions, 20 deletions
diff --git a/Completion/User/_fakeroot b/Completion/User/_fakeroot
index 64e259d3d..bb9655a85 100644
--- a/Completion/User/_fakeroot
+++ b/Completion/User/_fakeroot
@@ -2,5 +2,6 @@
 
 _arguments \
        '--lib[alternate wrapper library]:wrapper library:_files' \
-       '--faked[alternate faked binary]:fake binary:_command_names' \
+       '--faked[alternate faked binary]:fake binary: _command_names -e' \
+       '(-):command name: _command_names -e'  \
        '*::arguments: _normal'
diff --git a/Completion/User/_rlogin b/Completion/User/_rlogin
index 2509bd79c..abc6f116e 100644
--- a/Completion/User/_rlogin
+++ b/Completion/User/_rlogin
@@ -17,7 +17,7 @@ _rlogin () {
       '-n[ignore stdin]' \
       '-l[specify login user name]:login as:_rlogin_users' \
       ':remote host name:_rlogin_hosts' \
-      ':command: _command_names -e' \
+      '(-):command: _command_names -e' \
       '*::command:->command' && ret=0
 
     if [[ -n "$state" ]]; then
diff --git a/Completion/User/_ssh b/Completion/User/_ssh
index 04ee5f2e2..986dec0c0 100644
--- a/Completion/User/_ssh
+++ b/Completion/User/_ssh
@@ -18,7 +18,7 @@ _ssh () {
   ssh|slogin)
     args=(
       ':remote host name:->userhost'
-      ':command: _command_names -e'
+      '(-):command: _command_names -e'
       '*::args:->command'
     )
     ;&
diff --git a/Completion/User/_sudo b/Completion/User/_sudo
index cfa8172fb..2b5a5cb7d 100644
--- a/Completion/User/_sudo
+++ b/Completion/User/_sudo
@@ -1,15 +1,19 @@
 #compdef sudo
 
 _arguments \
-        '-V[show version]' \
-        '-l[list commands]' \
-        '-h[show help]' \
-        '-v[validate timestamp file]' \
-        '-k[remove timestamp file]' \
-        '-b[run command in background]' \
-        '-r:Kerberos realm:' \
-        '-p:prompt:' \
-        '-u:user name:_users' \
-        '-s[run SHELL]' \
-        '-H[set HOME environment variable]' \
-        '*::command and arguments:_normal'
+       '-V[show version]' \
+       '-l[list allowed commands]' \
+       '-L[list options from Default section]' \
+       '-h[show help]' \
+       '-v[validate user timestamp]' \
+       '-k[invalidate user timestamp]' \
+       '-K[remove user timestamp]' \
+       '-b[run command in background]' \
+       '-r[Kerberos realm]:Kerberos realm:' \
+       '-p[password prompt]:password prompt:' \
+       '-u[user name]:user name:_users' \
+       '-s[run SHELL]' \
+       '-H[set HOME environment variable]' \
+       '-S[read password from stdin]' \
+       '(-):command name: _command_names -e'  \
+       '*::arguments: _normal'
diff --git a/Completion/User/_xargs b/Completion/User/_xargs
index 71aff222f..8b9291227 100644
--- a/Completion/User/_xargs
+++ b/Completion/User/_xargs
@@ -3,9 +3,11 @@
 _arguments \
   -{p,t,x} \
   -{e-,E}':end-of-file string:' \
-  -{i-,I}':replacement string for lines:' \
-  -{l-,L}':number of input lines:' \
-  '-n:maximum number of arguments:' \
+  '(-x -I)-i-:replacement string for lines:' \
+  '(-x -i)-I:replacement string for lines:' \
+  '(-n -L -x)-l-:number of input lines:' \
+  '(-n -l)-L:number of input lines:' \
+  '(-l -L)-n:maximum number of arguments:' \
   '-s:maximum command line length:' \
-  ':command: _command_names -e' \
-  '*::args:_normal'
+  '(-):command: _command_names -e' \
+  '*::args: _normal'