diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Functions/Misc/zargs | 4 | ||||
-rw-r--r-- | Functions/Zle/match-words-by-style | 3 |
3 files changed, 7 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog index 5b71d978c..e1cbeaa84 100644 --- a/ChangeLog +++ b/ChangeLog @@ -3,6 +3,9 @@ * 29673: Doc/Zsh/compsys.yo: Clarify what 'other' in the ignore-line style does. + * 28852: Misc/zargs, Zle/match-words-by-style: Use syntax that doesn't + depend on SHORT_LOOPS being set. + 2011-08-11 Peter Stephenson <p.w.stephenson@ntlworld.com> * Src/Modules/datetime.mdd: unposted: also fix the autofeatures. @@ -15239,5 +15242,5 @@ ***************************************************** * This is used by the shell to define $ZSH_PATCHLEVEL -* $Revision: 1.5423 $ +* $Revision: 1.5424 $ ***************************************************** diff --git a/Functions/Misc/zargs b/Functions/Misc/zargs index 58d84617e..8350b1aba 100644 --- a/Functions/Misc/zargs +++ b/Functions/Misc/zargs @@ -207,7 +207,7 @@ then else call=($command) # Use "repeat" here so "continue" won't complain. - repeat 1 eval "$execute ; $analyze" + repeat 1; do eval "$execute ; $analyze"; done return $ret fi fi @@ -273,7 +273,7 @@ do repeat $P do ((ARGC)) || break - for (( end=l; end && ${(c)#argv[1,end]} > s; end/=2 )) : + for (( end=l; end && ${(c)#argv[1,end]} > s; end/=2 )) { } (( end > n && ( end = n ) )) args=( $argv[1,end] ) shift $((end > ARGC ? ARGC : end)) diff --git a/Functions/Zle/match-words-by-style b/Functions/Zle/match-words-by-style index 69ceba76a..b387828f3 100644 --- a/Functions/Zle/match-words-by-style +++ b/Functions/Zle/match-words-by-style @@ -220,8 +220,7 @@ if [[ $wordstyle = *subword* ]]; then fi match=() -charskip= -repeat $skip charskip+=\? +charskip=${(l:skip::?:)} eval pat2='${RBUFFER##(#b)('${charskip}${spacepat}')('\ ${wordpat2}')('${spacepat}')}' |