summary refs log tree commit diff
path: root/Completion/Base/Utility/_describe
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2001-08-07 10:38:36 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2001-08-07 10:38:36 +0000
commitb0ac280e1aee61f007f161c8bd9bcc31c101aadf (patch)
tree520187494317fa4deac06781219787fe7cf2eb26 /Completion/Base/Utility/_describe
parent23581f7664b70932e8736f10e5b143beeb4e7783 (diff)
downloadzsh-b0ac280e1aee61f007f161c8bd9bcc31c101aadf.tar.gz
zsh-b0ac280e1aee61f007f161c8bd9bcc31c101aadf.tar.xz
zsh-b0ac280e1aee61f007f161c8bd9bcc31c101aadf.zip
make _dd not use already used specs; fix for selecting stuff to complete in _describe; fix for correction and _describe with grouped lists (15588)
Diffstat (limited to 'Completion/Base/Utility/_describe')
-rw-r--r--Completion/Base/Utility/_describe8
1 files changed, 6 insertions, 2 deletions
diff --git a/Completion/Base/Utility/_describe b/Completion/Base/Utility/_describe
index cd891368a..9ad04c224 100644
--- a/Completion/Base/Utility/_describe
+++ b/Completion/Base/Utility/_describe
@@ -78,9 +78,13 @@ while _tags; do
         fi
     
         if [[ -n $_mats ]]; then
-          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -O $_strs -D $_mats -s $_strs
+          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_strs - \
+                  "${(@M)${(@P)_strs}##([^:\\]|\\?)##}"
+          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_mats - \
+                  "${(@M)${(@P)_strs}##([^:\\]|\\?)##}"
         else
-          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -O $_strs -a $_strs
+          compadd "$_opts[@]" "${(@)_expl:/-J/-2V}" -D $_strs - \
+                  "${(@M)${(@P)_strs}##([^:\\]|\\?)##}"
         fi
       done
       set - "$_argv[@]"