about summary refs log tree commit diff
path: root/Completion
diff options
context:
space:
mode:
authorSven Wischnowsky <wischnow@users.sourceforge.net>2000-07-13 11:03:59 +0000
committerSven Wischnowsky <wischnow@users.sourceforge.net>2000-07-13 11:03:59 +0000
commitb46926af8d6ccba49018ff0ee6eab186f5e7d5f0 (patch)
treea08d188373248fd488cf9f6fb6e92ac5c1ad42a9 /Completion
parent663ecf8e1237fcc32d2d1951f25e6c3c6ada08b1 (diff)
downloadzsh-b46926af8d6ccba49018ff0ee6eab186f5e7d5f0.tar.gz
zsh-b46926af8d6ccba49018ff0ee6eab186f5e7d5f0.tar.xz
zsh-b46926af8d6ccba49018ff0ee6eab186f5e7d5f0.zip
fix for _arguments with single-letter options: recognize option-strings with multiple options; in _main_complete stop trying completers when one called _message, don't display warnings in such cases (12241)
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Core/_main_complete4
1 files changed, 3 insertions, 1 deletions
diff --git a/Completion/Core/_main_complete b/Completion/Core/_main_complete
index 707b48d72..ee15a4b65 100644
--- a/Completion/Core/_main_complete
+++ b/Completion/Core/_main_complete
@@ -156,6 +156,8 @@ for tmp in "$_completers[@]"; do
     fi
     (( _matcher_num++ ))
   done
+  [[ -n "$_comp_mesg" ]] && break
+
   (( _completer_num++ ))
 done
 
@@ -265,7 +267,7 @@ if [[ $compstate[old_list] = keep || nm -gt 1 ]]; then
 elif [[ nm -le 1 && -n "$_comp_mesg" ]]; then
   compstate[insert]=''
   compstate[list]='list force messages'
-elif [[ nm -eq 0 &&
+elif [[ nm -eq 0 && -z "$_comp_mesg" &&
         $#_lastdescr -ne 0 && $compstate[old_list] != keep ]] &&
      zstyle -s ":completion:${curcontext}:warnings" format format; then