about summary refs log tree commit diff
path: root/Completion/Core/_main_complete
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core/_main_complete')
-rw-r--r--Completion/Core/_main_complete6
1 files changed, 4 insertions, 2 deletions
diff --git a/Completion/Core/_main_complete b/Completion/Core/_main_complete
index 1b1fdd0e6..34566d2d4 100644
--- a/Completion/Core/_main_complete
+++ b/Completion/Core/_main_complete
@@ -35,8 +35,10 @@ typeset -U _lastdescr _comp_ignore
 
 [[ -z "$curcontext" ]] && curcontext=:::
 
-if [[ "$compstate[insert]" = tab* ]]; then
-  zstyle -T ":completion:${curcontext}:" insert-tab && return 1
+if [[ "$compstate[insert]" = tab* && "$WIDGET" != *list* ]]; then
+  { zstyle -T ":completion:${curcontext}:" insert-tab &&
+    { [[ "$curcontext" != :* || -z "$compstate[vared]" ]] ||
+        zstyle -t ":completion:vared${curcontext}:" insert-tab } } && return 1
 
   compstate[insert]="${compstate[insert]//tab /}"
 fi