Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 40760: Always tokenize unquoted - to Dash. | Peter Stephenson | 2017-03-07 | 1 | -17/+24 |
| | | | | | | This fixes use of pattern match character ranges in unusual contexts. Attempt to detect a tokenized - in cases where we don't care. | ||||
* | 40640: the (A) parameter flag forces array result even if assignment syntax ↵ | Barton E. Schaefer | 2017-02-25 | 1 | -0/+11 |
| | | | | is not used | ||||
* | 40598: paramsubst() should always return scalar when PREFORK_SINGLE was passed | Barton E. Schaefer | 2017-02-20 | 1 | -1/+14 |
| | |||||
* | 40593: SHWORDSPLIT + unset IFS should cause default splitting of $@ | Barton E. Schaefer | 2017-02-20 | 1 | -1/+2 |
| | |||||
* | 40375: autoload with explicit path mustn't trash already loaded function. | Peter Stephenson | 2017-01-18 | 1 | -4/+4 |
| | | | | | Also remove unnecessary dupstring() on already duplicated string when expanding =cmd. | ||||
* | users/22319: ${ary1:^ary2} should not change isarr state of expansion of ary1 | Barton E. Schaefer | 2017-01-03 | 1 | -2/+4 |
| | | | | Unless ary1 is made from a scalar, semantics of (@) in double quotes is lost. | ||||
* | 40071: change Dash back to "-" before evaluating named directory expansions | Barton E. Schaefer | 2016-12-03 | 1 | -0/+2 |
| | |||||
* | 40034: clear badcshglob when ignoring errors | Barton E. Schaefer | 2016-11-29 | 1 | -1/+3 |
| | |||||
* | 40035: Cosmetic fixes for comments and documentation. | Eitan Adler | 2016-11-29 | 1 | -1/+1 |
| | | | | Mostly fixes to doubled words. | ||||
* | 39949: Special case for "-" in directory names. | Peter Stephenson | 2016-11-15 | 1 | -8/+8 |
| | | | | | It can be sh-tokenized to Dash to allow for appearing in ranges after substitution, so needs to be turned back to "-" in that case. | ||||
* | 39579: Fix string calculation for parameter quoting. | Julien Cretin | 2016-10-06 | 1 | -3/+3 |
| | | | | | Where there was no closing quote the size or position of the null could be wrongly calculated. | ||||
* | 34943: Fixes for "command" with multiple options. | Peter Stephenson | 2016-09-29 | 1 | -1/+1 |
| | | | | | | These need to combine properly, and alos "command -p" with either -v or -V needs to search for builtins and then using the default system path. | ||||
* | zsh-users/21903: Fix ${...?...} in interactive shell. | Peter Stephenson | 2016-09-14 | 1 | -0/+7 |
| | | | | | On failure should abort back to top level, but we reset the error flag around commands. Add a hard error flag that's only reset at top level. | ||||
* | 39252: internal: quotestring: Drop the 'e' parameter, which no caller uses. | Daniel Shahaf | 2016-09-11 | 1 | -6/+6 |
| | |||||
* | 39115: repair forced joining when (@) and (j) are used together | Barton E. Schaefer | 2016-08-29 | 1 | -2/+3 |
| | |||||
* | 39046 + 39061: New :P history modifier. | Daniel Shahaf | 2016-08-22 | 1 | -0/+13 |
| | |||||
* | 39035: ${(A)name=word} should expand as an array even when there is only one ↵ | Barton E. Schaefer | 2016-08-12 | 1 | -0/+1 |
| | | | | element. | ||||
* | 39028: more join/split cases fixed and tested. | Barton E. Schaefer | 2016-08-12 | 1 | -3/+4 |
| | |||||
* | 39019 (cf. PWS 39013): fix SHWORDSPLIT regression introduced by workers/29313 | Barton E. Schaefer | 2016-08-10 | 1 | -6/+15 |
| | | | | Also add test cases for more join/split combinations | ||||
* | 38973: Optimize indexing array parameters. | Daniel Shahaf | 2016-08-01 | 1 | -4/+11 |
| | | | | | | | | | | | % () { for 1 in $prefix/zsh/bin/zsh Src/zsh; do $1 -f -c 'a=( {1..1000000} ); repeat 3 time ( repeat 300 : $a[1] )'; done } ( repeat 300; do; : $a[1]; done; ) 1.68s user 0.01s system 98% cpu 1.718 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.710 total ( repeat 300; do; : $a[1]; done; ) 1.69s user 0.01s system 99% cpu 1.714 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.00s user 0.01s system 72% cpu 0.022 total ( repeat 300; do; : $a[1]; done; ) 0.01s user 0.01s system 69% cpu 0.023 total | ||||
* | 38599: skip the "no such named directory" warning when NO_EXEC is in effect | Barton E. Schaefer | 2016-06-04 | 1 | -1/+1 |
| | |||||
* | unposted: internal: Document modify(). | Daniel Shahaf | 2016-06-03 | 1 | -0/+13 |
| | |||||
* | users/21352: ensure $'' doesn't get elided. | Peter Stephenson | 2016-03-07 | 1 | -1/+5 |
| | | | | | Assign nulstring to it if empty. Test for all forms of quotation marks. | ||||
* | 37344: restore old printable quoting, add ${(q+)...}. | Peter Stephenson | 2015-12-07 | 1 | -4/+10 |
| | | | | | | The \C- form is only used inside quotedzputs(). ${(q+)...} outputs a quotedzputs() representation. | ||||
* | 37206: fix ${(t)param} for "typeset -H param" | Barton E. Schaefer | 2015-11-23 | 1 | -1/+1 |
| | |||||
* | 37096: Another $${(P)...} tweak. | Peter Stephenson | 2015-11-12 | 1 | -2/+17 |
| | | | | Make a top level (P) work with nested ones, i.e. ${(P)${(P)...}...} | ||||
* | 37094: Further tweaks to parameter name references. | Peter Stephenson | 2015-11-11 | 1 | -3/+3 |
| | | | | | | | | Safety in array test. Make nested references work. Add parameter tests. | ||||
* | 37092: make nested ${(P)name} properly refer to parameter on return | Peter Stephenson | 2015-11-11 | 1 | -44/+70 |
| | |||||
* | 37074: extend previous fix to over whitespace at end | Peter Stephenson | 2015-11-07 | 1 | -14/+36 |
| | |||||
* | 37073: another SH_WORD_SPLIT problem. | Peter Stephenson | 2015-11-06 | 1 | -6/+34 |
| | | | | | In cases like x${:- y} the space was simply removed instead of being used for splitting. | ||||
* | 35694: fix handling of history modifiers applied across all elements of an ↵ | Barton E. Schaefer | 2015-07-06 | 1 | -2/+8 |
| | | | | array parameter value | ||||
* | 35343: Avoid $#name length handling for POSIX_IDENTIFIERS | Peter Stephenson | 2015-05-31 | 1 | -1/+2 |
| | |||||
* | 35326: $#- was misparsed as ${#-} | Peter Stephenson | 2015-05-29 | 1 | -1/+1 |
| | |||||
* | 35153: nested math substitution | Peter Stephenson | 2015-05-15 | 1 | -2/+11 |
| | |||||
* | 35151: improved check for parameter q and b flags | Peter Stephenson | 2015-05-15 | 1 | -1/+2 |
| | |||||
* | 35067: Add (b) parameter flag for pattern char backslashing. | Peter Stephenson | 2015-05-10 | 1 | -2/+11 |
| | | | | | | Doc tweak from Daniel in 35071. Includes test. | ||||
* | 34606: fix up nested arithmetic substitution | Peter Stephenson | 2015-02-22 | 1 | -2/+18 |
| | | | | | | | | Arithmetic within a parameter substitution is a special case that needs fixing with the introduction of the new Inparmath token. Add test. | ||||
* | 34573: Safer failure to handle command substitution | Peter Stephenson | 2015-02-19 | 1 | -3/+7 |
| | |||||
* | 34570: Another nasty command / math substituion thing. | Peter Stephenson | 2015-02-19 | 1 | -11/+17 |
| | | | | | | Mark arithmetic substitutions with tokens to make sure the substitution go knows what to do. Before it was guessing by counting the parentheses at the end. | ||||
* | 34322: bug with interface to parsestr() etc. | Peter Stephenson | 2015-01-18 | 1 | -3/+5 |
| | | | | | | | Was showing up in places like ${(e)...} where command substitution could reallocate the token string, but actually there was never any guarantee that the lexer wouldn't do that, so this was always a bit iffy. | ||||
* | 34105: subst: remove dead code | Mikael Magnusson | 2015-01-06 | 1 | -1/+1 |
| | | | | Found by Coverity (Issue 1255810). | ||||
* | 34103: fix ancient double-quote handling thinko in subst_parse_str() | Barton E. Schaefer | 2015-01-06 | 1 | -2/+4 |
| | | | | This doesn't seem to have mattered, but must in some obscure cases | ||||
* | 33976: fix overlapping strcpy() | Barton E. Schaefer | 2014-12-15 | 1 | -1/+1 |
| | |||||
* | 33876: etc.: Separate errors and keyboards interrupts | Peter Stephenson | 2014-12-11 | 1 | -9/+18 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Combination of 12 commits from interrupt_abort branch. Basic strategy is to introduce bits to errflag and to set and reset them separately. Remove interrupt status on return to main keymap. Turn off ERRFLAG_INT for always block. Restore bit thereafter: we probably need a new variable in order to allow user interrupts to be reset in the always block. Add TRY_BLOCK_INTERRUPT This works the same as TRY_BLOCK_ERROR, but for a SIGINT, too. Ensure propagation of SIGINT from exited job. If received by foreground job, shell uses ERRFLAG_INT, not ERRFLAG_ERROR, to set the new state. Reset errflag before precmd() Add always block in _main_completion to fix ZLS_COLORS Ensures we get the right state of $ZLS_COLORS at the end of _main_complete even if there's an interrupt. However, the "right state" is a bit messy as it depends on styles. | ||||
* | 33423: expand ${(p)...} to allow ${(ps.$param.)...} | Peter Stephenson | 2014-10-12 | 1 | -5/+16 |
| | |||||
* | 33118: record original param unset state when treating empty the same as unset, | Barton E. Schaefer | 2014-09-06 | 1 | -6/+9 |
| | | | | to avoid incorrect NO_UNSET errors | ||||
* | unposted: remove unused variables | Peter Stephenson | 2014-08-04 | 1 | -1/+1 |
| | |||||
* | 32949 (wip 32928, 32937): Add :^ syntax for zipping two arrays | Mikael Magnusson | 2014-08-04 | 1 | -0/+61 |
| | |||||
* | 32932: add hmkarray() and use to fix leak | Peter Stephenson | 2014-08-01 | 1 | -1/+1 |
| | |||||
* | 32552 (updated by 32560): fix segfault when using process substitution in ↵ | Andrew Waldron | 2014-04-18 | 1 | -1/+1 |
| | | | | | | anonymous function argument list Also disallow process substitution in function name position. |