about summary refs log tree commit diff
path: root/Completion/Core/_ignored
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core/_ignored')
-rw-r--r--Completion/Core/_ignored11
1 files changed, 9 insertions, 2 deletions
diff --git a/Completion/Core/_ignored b/Completion/Core/_ignored
index 0ba5a7ad2..1ae2e2846 100644
--- a/Completion/Core/_ignored
+++ b/Completion/Core/_ignored
@@ -10,7 +10,8 @@ zstyle -a ":completion:${curcontext}:" completer comp ||
   comp=( "${(@)_completers[1,_completer_num-1][(R)_ignored(|:*),-1]}" )
 
 local _comp_no_ignore=yes tmp expl \
-      _completer _completer_num _matcher _matchers _matcher_num
+      _completer _completer_num \
+      _matcher _c_matcher _matchers _matcher_num
 
 _completer_num=1
 
@@ -30,7 +31,13 @@ for tmp in "$comp[@]"; do
       _matchers=( '' )
 
   _matcher_num=1
-  for _matcher in "$_matchers[@]"; do
+  _matcher=''
+  for _c_matcher in "$_matchers[@]"; do
+    if [[ "$_c_matcher" == +* ]]; then
+      _matcher="$_matcher $_c_matcher[2,-1]"
+    else
+      _matcher="$_c_matcher"
+    fi
     if [[ "$tmp" != _ignored ]] && "$tmp"; then
       if zstyle -s ":completion:${curcontext}:" single-ignored tmp &&
          [[ $compstate[old_list] != shown &&