diff options
author | Tanaka Akira <akr@users.sourceforge.net> | 1999-10-18 09:46:07 +0000 |
---|---|---|
committer | Tanaka Akira <akr@users.sourceforge.net> | 1999-10-18 09:46:07 +0000 |
commit | 437294af796f2c1530ef942f53c823ba0753556f (patch) | |
tree | 0ed0cf72a78272e2da5fb8ccca1d131a9c3f2ddd /Completion/Core | |
parent | b852c1f6cf50aaa37c9d2e8cbeb63f74b9e5d01f (diff) | |
download | zsh-437294af796f2c1530ef942f53c823ba0753556f.tar.gz zsh-437294af796f2c1530ef942f53c823ba0753556f.tar.xz zsh-437294af796f2c1530ef942f53c823ba0753556f.zip |
zsh-workers/8313
Diffstat (limited to 'Completion/Core')
-rw-r--r-- | Completion/Core/_main_complete | 1 | ||||
-rw-r--r-- | Completion/Core/_path_files | 4 | ||||
-rw-r--r-- | Completion/Core/compinit | 5 |
3 files changed, 6 insertions, 4 deletions
diff --git a/Completion/Core/_main_complete b/Completion/Core/_main_complete index 460b3aba9..304a97828 100644 --- a/Completion/Core/_main_complete +++ b/Completion/Core/_main_complete @@ -60,6 +60,7 @@ comppostfuncs=() _lastdescr=( "\`${(@)^_lastdescr:#}'" ) if [[ compstate[nmatches] -eq 0 && + compstate[matcher] -eq compstate[total_matchers] && -n "$compconfig[warning_format]" && $#_lastdescr -ne 0 ]]; then local str diff --git a/Completion/Core/_path_files b/Completion/Core/_path_files index eb9c06da6..6e23f46aa 100644 --- a/Completion/Core/_path_files +++ b/Completion/Core/_path_files @@ -347,7 +347,7 @@ for prepath in "$prepaths[@]"; do SUFFIX="" fi - if [[ -n $menu ]]; then + if [[ -n $menu || "$compconfig[path_expand]" != *suffix* ]]; then [[ -n "$compconfig[path_cursor]" ]] && compstate[to_end]='' if [[ "$tmp3" = */* ]]; then compadd -Qf -p "$linepath${testpath:q}" -s "/${tmp3#*/}" \ @@ -418,7 +418,7 @@ done exppaths=( "${(@)exppaths:#$orig}" ) -if [[ -n "$compconfig[path_expand]" && +if [[ "$compconfig[path_expand]" = *prefix* && $#exppaths -gt 0 && nm -eq compstate[nmatches] ]]; then PREFIX="${opre}${osuf}" SUFFIX="" diff --git a/Completion/Core/compinit b/Completion/Core/compinit index 16148a945..ca9240f92 100644 --- a/Completion/Core/compinit +++ b/Completion/Core/compinit @@ -368,7 +368,7 @@ compconf() { # Utility function to call a function if it exists. # -# Usage: call <return> <name> [ <args> ... ] +# Usage: funcall <return> <name> [ <args> ... ] # # If a function named <name> is defined (or defined to be autoloaded), # it is called. If <return> is given not the string `-' or empty, it is @@ -385,10 +385,11 @@ funcall() { shift - if builtin functions "$1"; then + if builtin functions "$1" >& /dev/null; then "$@" _ret="$?" [[ -n "$_name" ]] && eval "${_name}=${_ret}" + compstate[restore]='' return 0 fi return 1 |