summaryrefslogtreecommitdiff
path: root/Src/zsh.h
AgeCommit message (Collapse)AuthorFilesLines
2017-02-1340536: Prepend directory to $fpath.Peter Stephenson1-0/+1
Used if parent function is autoloaded by absolute path so as to find functions in the same suite without shell code modification.
2017-01-2840439: PAT_HEAPDUP definition just for clarityBarton E. Schaefer1-0/+1
2017-01-2340391: Add WARN_NESTED_VAR option and functions -W.Peter Stephenson1-1/+9
These are companions to WARN_CREATED_GLOBAL, warning when a variable from an enclosing scope is altered.
2017-01-1240335: More care with autoload function path.Peter Stephenson1-0/+1
If doing "autoload -X", the path present might actually be location of file containing the function with the autoload -X. Add an explicit flag to say it's a directory for autoload.
2017-01-11Add features associated with autoloading a function using an absolutePeter Stephenson1-1/+4
path. -d defaults to normal fpath -r remembers the path without actually loading. May be combined with -d. -R does the same but it's an error if not found -X can now take a directory path: this is used to output not yet loaded functions that have an associated path.
2017-01-1040306 with doc tweaks: Change behaviour expanding alias in () function ↵Peter Stephenson1-0/+1
definition. Now an error unless the () is part of the same error as the name. Add ALIAS_FUNC_DEF option to allow it again.
2016-12-0840119: correct typo in commentOliver Kiddle1-2/+2
2016-12-05Extra case for ERR_RETURN and ERR_EXIT.Peter Stephenson1-0/+1
Don't trigger just because status is non-zero at end of complex shell construct as this may be a case we've already suppressed.
2016-11-2940037: Unicode 9 character width support.Joshua Rubin1-1/+3
Enable with --enable-unicode9.
2016-11-2940035: Cosmetic fixes for comments and documentation.Eitan Adler1-1/+1
Mostly fixes to doubled words.
2016-10-0339521: Refactor start of execcmd().Peter Stephenson1-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.
2016-09-3039498: use PRIVILEGED option to decide on problematic parameter importsPeter Stephenson1-1/+1
2016-09-2839460: Don't import PS4 if running as root.Peter Stephenson1-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.
2016-09-1639331: Reparent subjob on fork with exited superjob.Peter Stephenson1-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.
2016-09-14zsh-users/21903: Fix ${...?...} in interactive shell.Peter Stephenson1-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.
2016-09-1339292: Distinguish "=" and "==" tests in output.Peter Stephenson1-16/+23
This is both in xtrace output and shell code rebuilt from internal structures.
2016-09-0639181: Add PM_SINGLE and use for compstate.Peter Stephenson1-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.
2016-07-0838809: fix tracking of colour attributes and restore them when turning bold offOliver Kiddle1-1/+1
2016-01-2937700: Teach ${(z)} the 'repeat WORD SUBLIST' syntax.Daniel Shahaf1-0/+1
2016-01-1937689: ! and ^ need to be tokenised in character setsPeter Stephenson1-7/+9
2016-01-1937678: Now possible to quote "-" in pattern rangePeter Stephenson1-6/+12
2015-12-0737344: restore old printable quoting, add ${(q+)...}.Peter Stephenson1-1/+7
The \C- form is only used inside quotedzputs(). ${(q+)...} outputs a quotedzputs() representation.
2015-12-0637314: upgrade quotedzputs() for non-printable output.Peter Stephenson1-0/+6
Use nicechar with $'..' quoting; upgrade nicechar() etc. to use suitable output.
2015-11-1137092: make nested ${(P)name} properly refer to parameter on returnPeter Stephenson1-12/+39
2015-10-3037022: add GLOB_STAR_SHORT option to abbreviate ** and ***Peter Stephenson1-0/+1
2015-10-2937014: Improved internal parameter setting.Peter Stephenson1-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.
2015-10-2436941: Mark file descripors in ztcp as used.Peter Stephenson1-4/+11
Allow such file descriptors to be either internal and closed on exec or external and so managed explicitly by module.
2015-09-2936700: unmetafy early for parameter matchPeter Stephenson1-0/+26
2015-09-2836682: expand pattern interface to optimise unmetaficationPeter Stephenson1-0/+10
2015-09-2136577: supplement 36559 to using LONG_MAX for 64-bit longPeter Stephenson1-0/+4
2015-09-21unposted: typo in 36559Peter Stephenson1-1/+1
2015-09-1936559: test earlier for overflow in pattern rangePeter Stephenson1-0/+7
2015-09-1036478: Add [[:INCOMPLETE:]] and [[:INVALID:]] pattern tests.Peter Stephenson1-3/+14
2015-07-2335793: avoid undefined behaviour shifting signed numberPeter Stephenson1-3/+4
2015-07-0235668: Improved fix for command/proc subst starting in alias.Peter Stephenson1-1/+1
Use input flag to suppress the unwanted backtracking. Add test for the extra case covered.
2015-07-0135667: fix command substitution that starts but doesn't finish in aliasPeter Stephenson1-0/+1
2015-06-2935655: APPEND_CREATE option for POSIX copmatible NO_CLOBBERPeter Stephenson1-0/+1
2015-06-2735623: All is_array assignments should be treated as having a value.Peter Stephenson1-5/+3
2015-06-24various posts: Implement assignment parsing for typeset.Peter Stephenson1-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.
2015-06-12Add non-metafied character length handling.Peter Stephenson1-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.
2015-06-0535386: expand tabs where useful in builtins outputing function.Peter Stephenson1-3/+6
Also add to zed -f. Option is -x <numm>.
2015-05-1135078: Add backslash quoting to parameter (b) flag from 35067.Peter Stephenson1-1/+1
2015-05-1035067: Add (b) parameter flag for pattern char backslashing.Peter Stephenson1-0/+10
Doc tweak from Daniel in 35071. Includes test.
2015-05-10Don't treat NUL as a combining characterMikael Magnusson1-2/+2
2015-03-2634784: fix old bug with history word selectionPeter Stephenson1-2/+3
2015-03-2534776: improve suppression of alias expansions from history.Peter Stephenson1-1/+0
Now uses the mechanism in use for other forms of suppression of sections of input.
2015-02-1934570: Another nasty command / math substituion thing.Peter Stephenson1-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.
2015-02-1634560: Fix $(( that's actually a multiline cmd subst.Peter Stephenson1-0/+1
2015-01-1134234: use structures for normal and raw lexical buffer statePeter Stephenson1-6/+23
2015-01-09Rearrange context saving.Peter Stephenson1-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.