Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | 39521: Refactor start of execcmd(). | Peter Stephenson | 2016-10-03 | 1 | -0/+16 |
| | | | | | | By splitting into _analyse and _exec execpline2() has easier access to the state at the start of execution. Use this to ensure we fork if this is a builtin with no arguments. | ||||
* | 39498: use PRIVILEGED option to decide on problematic parameter imports | Peter Stephenson | 2016-09-30 | 1 | -1/+1 |
| | |||||
* | 39460: Don't import PS4 if running as root. | Peter Stephenson | 2016-09-28 | 1 | -0/+1 |
| | | | | | There was an exploit in bash using SHELLOPTS to turn on xtrace, however this can't happen in zsh, so this is simply a precaution. | ||||
* | 39331: Reparent subjob on fork with exited superjob. | Peter Stephenson | 2016-09-16 | 1 | -1/+4 |
| | | | | | | | | | | | Fixes case of v() { { vim - } always { true } } ls | v ^Z fg Tentative fix: still a race at exit where zsh forked by ^Z is stopped when restarted. | ||||
* | zsh-users/21903: Fix ${...?...} in interactive shell. | Peter Stephenson | 2016-09-14 | 1 | -1/+8 |
| | | | | | 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. | ||||
* | 39292: Distinguish "=" and "==" tests in output. | Peter Stephenson | 2016-09-13 | 1 | -16/+23 |
| | | | | | This is both in xtrace output and shell code rebuilt from internal structures. | ||||
* | 39181: Add PM_SINGLE and use for compstate. | Peter Stephenson | 2016-09-06 | 1 | -0/+1 |
| | | | | | | | | | | | | This flags that compstate (or any other special) can only have a single instance and an attempt to create a new one is an error. Given the very fiddly semantics of compstate any other usage seems pointless. No investigation yet of other variables that could use this. Note it's still possible to hide such variables; only instances that keep the special nature are affected. | ||||
* | 38809: fix tracking of colour attributes and restore them when turning bold off | Oliver Kiddle | 2016-07-08 | 1 | -1/+1 |
| | |||||
* | 37700: Teach ${(z)} the 'repeat WORD SUBLIST' syntax. | Daniel Shahaf | 2016-01-29 | 1 | -0/+1 |
| | |||||
* | 37689: ! and ^ need to be tokenised in character sets | Peter Stephenson | 2016-01-19 | 1 | -7/+9 |
| | |||||
* | 37678: Now possible to quote "-" in pattern range | Peter Stephenson | 2016-01-19 | 1 | -6/+12 |
| | |||||
* | 37344: restore old printable quoting, add ${(q+)...}. | Peter Stephenson | 2015-12-07 | 1 | -1/+7 |
| | | | | | | The \C- form is only used inside quotedzputs(). ${(q+)...} outputs a quotedzputs() representation. | ||||
* | 37314: upgrade quotedzputs() for non-printable output. | Peter Stephenson | 2015-12-06 | 1 | -0/+6 |
| | | | | | Use nicechar with $'..' quoting; upgrade nicechar() etc. to use suitable output. | ||||
* | 37092: make nested ${(P)name} properly refer to parameter on return | Peter Stephenson | 2015-11-11 | 1 | -12/+39 |
| | |||||
* | 37022: add GLOB_STAR_SHORT option to abbreviate ** and *** | Peter Stephenson | 2015-10-30 | 1 | -0/+1 |
| | |||||
* | 37014: Improved internal parameter setting. | Peter Stephenson | 2015-10-29 | 1 | -3/+0 |
| | | | | | | | | Enhance WARNCREATEGLOBAL to work in many more cases. Don't create REPLY as an integer if it didn't previously exist as one, even if the value to be set is integral, as this is likely to mess up later uses of REPLY. | ||||
* | 36941: Mark file descripors in ztcp as used. | Peter Stephenson | 2015-10-24 | 1 | -4/+11 |
| | | | | | Allow such file descriptors to be either internal and closed on exec or external and so managed explicitly by module. | ||||
* | 36700: unmetafy early for parameter match | Peter Stephenson | 2015-09-29 | 1 | -0/+26 |
| | |||||
* | 36682: expand pattern interface to optimise unmetafication | Peter Stephenson | 2015-09-28 | 1 | -0/+10 |
| | |||||
* | 36577: supplement 36559 to using LONG_MAX for 64-bit long | Peter Stephenson | 2015-09-21 | 1 | -0/+4 |
| | |||||
* | unposted: typo in 36559 | Peter Stephenson | 2015-09-21 | 1 | -1/+1 |
| | |||||
* | 36559: test earlier for overflow in pattern range | Peter Stephenson | 2015-09-19 | 1 | -0/+7 |
| | |||||
* | 36478: Add [[:INCOMPLETE:]] and [[:INVALID:]] pattern tests. | Peter Stephenson | 2015-09-10 | 1 | -3/+14 |
| | |||||
* | 35793: avoid undefined behaviour shifting signed number | Peter Stephenson | 2015-07-23 | 1 | -3/+4 |
| | |||||
* | 35668: Improved fix for command/proc subst starting in alias. | Peter Stephenson | 2015-07-02 | 1 | -1/+1 |
| | | | | | | Use input flag to suppress the unwanted backtracking. Add test for the extra case covered. | ||||
* | 35667: fix command substitution that starts but doesn't finish in alias | Peter Stephenson | 2015-07-01 | 1 | -0/+1 |
| | |||||
* | 35655: APPEND_CREATE option for POSIX copmatible NO_CLOBBER | Peter Stephenson | 2015-06-29 | 1 | -0/+1 |
| | |||||
* | 35623: All is_array assignments should be treated as having a value. | Peter Stephenson | 2015-06-27 | 1 | -5/+3 |
| | |||||
* | various posts: Implement assignment parsing for typeset. | Peter Stephenson | 2015-06-24 | 1 | -24/+63 |
| | | | | | | | | | | | | Typeset assignments now work like raw assignments except for no "+=" and no GLOB_ASSIGN. Documented in typeset builtin doc and mentioned in release notes. Tests to ensure basic sanity. Enabled by default, can be turned off by "disable -r" with typeset family of commands. | ||||
* | Add non-metafied character length handling. | Peter Stephenson | 2015-06-12 | 1 | -1/+11 |
| | | | | | | | Use this in regex module and add test using $'\ua0'. Rename mb_metacharinit() to mb_charinit() as it does not involve metafied characters. | ||||
* | 35386: expand tabs where useful in builtins outputing function. | Peter Stephenson | 2015-06-05 | 1 | -3/+6 |
| | | | | | | Also add to zed -f. Option is -x <numm>. | ||||
* | 35078: Add backslash quoting to parameter (b) flag from 35067. | Peter Stephenson | 2015-05-11 | 1 | -1/+1 |
| | |||||
* | 35067: Add (b) parameter flag for pattern char backslashing. | Peter Stephenson | 2015-05-10 | 1 | -0/+10 |
| | | | | | | Doc tweak from Daniel in 35071. Includes test. | ||||
* | Don't treat NUL as a combining character | Mikael Magnusson | 2015-05-10 | 1 | -2/+2 |
| | |||||
* | 34784: fix old bug with history word selection | Peter Stephenson | 2015-03-26 | 1 | -2/+3 |
| | |||||
* | 34776: improve suppression of alias expansions from history. | Peter Stephenson | 2015-03-25 | 1 | -1/+0 |
| | | | | | Now uses the mechanism in use for other forms of suppression of sections of input. | ||||
* | 34570: Another nasty command / math substituion thing. | Peter Stephenson | 2015-02-19 | 1 | -21/+23 |
| | | | | | | 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. | ||||
* | 34560: Fix $(( that's actually a multiline cmd subst. | Peter Stephenson | 2015-02-16 | 1 | -0/+1 |
| | |||||
* | 34234: use structures for normal and raw lexical buffer state | Peter Stephenson | 2015-01-11 | 1 | -6/+23 |
| | |||||
* | Rearrange context saving. | Peter Stephenson | 2015-01-09 | 1 | -0/+65 |
| | | | | | | | Variables are now associated with the module that declares them, being initialised and saved/restored there. However, as many variables are used for communication between modules, many of them are set in multiple places, so the assignment is ambiguous. | ||||
* | Fix command substitutions to parse contents as they are read in. | Peter Stephenson | 2015-01-08 | 1 | -0/+9 |
| | | | | | | | Do this by refactoring misnamed lexsave()/lexrestore() to allow continuity of history and input. Add test. | ||||
* | 33876: etc.: Separate errors and keyboards interrupts | Peter Stephenson | 2014-12-11 | 1 | -0/+14 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. | ||||
* | 33655: remove overlap of node flags | Peter Stephenson | 2014-11-08 | 1 | -3/+3 |
| | |||||
* | 33285: apply function definition redirections at execution | Peter Stephenson | 2014-09-29 | 1 | -0/+1 |
| | |||||
* | 33276: safer import of numerical variables from environment | Peter Stephenson | 2014-09-29 | 1 | -1/+2 |
| | |||||
* | 32768 with further modifications: LOCAL_LOOPS option. | Peter Stephenson | 2014-06-13 | 1 | -0/+1 |
| | |||||
* | 32682 with tweaks: Add INC_APPEND_HISTORY_TIME. | Peter Stephenson | 2014-06-06 | 1 | -0/+1 |
| | | | | Revert INC_APPEND_HISTORY behaviour. | ||||
* | 32634: add POSIX_ARGZERO option | Barton E. Schaefer | 2014-06-01 | 1 | -0/+1 |
| | |||||
* | 32412 / 32415: New giga- and terabyte units for glob qualifiers | Manuel Presnitz | 2014-03-01 | 1 | -3/+26 |
| | |||||
* | 32136: fix problem with kshglob. | Peter Stephenson | 2013-12-16 | 1 | -1/+5 |
| | | | | | Non-pattern characters that could be followed by "(" to introduce a ksh glob but weren't caused failures. |