about summary refs log tree commit diff
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2009-08-28 15:10:27 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2009-08-28 15:10:27 +0000
commit5b80d50ad3b88b74ff84ae760d80d7a965ea5670 (patch)
tree44f5adcd12f93a693594df0ca18560375602bc80
parentc326bf0d30b4e0a062d661b29ef8c1e2962078a8 (diff)
downloadzsh-5b80d50ad3b88b74ff84ae760d80d7a965ea5670.tar.gz
zsh-5b80d50ad3b88b74ff84ae760d80d7a965ea5670.tar.xz
zsh-5b80d50ad3b88b74ff84ae760d80d7a965ea5670.zip
27233: improved _values handling of optional arguments
mount -o loop= argument is optional
-rw-r--r--ChangeLog9
-rw-r--r--Completion/Base/Utility/_values2
-rw-r--r--Completion/Unix/Command/_mount2
3 files changed, 10 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index 442bbe4cb..4f6d98856 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2009-08-28  Peter Stephenson  <pws@csr.com>
+
+	* 27233: Completion/Base/Utility/_values,
+	Completion/Unix/Command/_mount: improve _values handling of
+	optional arguments so that list separate removes the argument
+	separator; use this to make "mount -o loop" complete better.
+
 2009-08-21  Peter Stephenson  <pws@csr.com>
 
 	* 27228: Functions/Newuser/zsh-newuser-install: add a clear
@@ -12099,5 +12106,5 @@
 
 *****************************************************
 * This is used by the shell to define $ZSH_PATCHLEVEL
-* $Revision: 1.4764 $
+* $Revision: 1.4765 $
 *****************************************************
diff --git a/Completion/Base/Utility/_values b/Completion/Base/Utility/_values
index 52c42bc70..c2ae26465 100644
--- a/Completion/Base/Utility/_values
+++ b/Completion/Base/Utility/_values
@@ -59,7 +59,7 @@ if compvalues -i "$@"; then
       _describe "$descr" \
         noargs "$sep[@]" -M 'r:|[_-]=* r:|=*' -- \
         args -S "${argsep}" -M 'r:|[_-]=* r:|=*' -- \
-        opts -qS "${argsep}" -M 'r:|[_-]=* r:|=*'
+        opts -qS "${argsep}" -r "${argsep}${sep} \\t\\n\\-" -M 'r:|[_-]=* r:|=*'
 
       curcontext="$oldcontext"
 
diff --git a/Completion/Unix/Command/_mount b/Completion/Unix/Command/_mount
index 8825643c5..7334481ba 100644
--- a/Completion/Unix/Command/_mount
+++ b/Completion/Unix/Command/_mount
@@ -322,7 +322,7 @@ if (( ! $+_fs_any )); then
       '(nosuid)suid[use suid and sgid bits]'
       '(async)sync[do I/O synchronously]'
       'dirsync[perform directory updates synchronously]'
-      'loop[use loopback device]:loopback device:_files'
+      'loop[use loopback device]::loopback device:_files'
       'encryption[enable encryption]:cypher'
       'keybits[set number of bits in encryption key]:key size:(64 128 160 192 256)'
       'offset[specify data start for loopback mount]:offset (bytes)'