about summary refs log tree commit diff
path: root/Src/hist.c
Commit message (Collapse)AuthorAgeFilesLines
* 50080: add missing STOUC() in casemodify()Jun-ichi Takimoto2022-04-201-2/+2
|
* 49990: casemodify() avoids metafying characters that it otherwise did not touchBart Schaefer2022-04-041-5/+14
|
* 49601: don't create ambiguous history file entries for lines ending with a ↵Oliver Kiddle2021-11-281-8/+11
| | | | backslash
* 49586: fix :a and :A modifiers (with PWD="/") on Cygwin⁩Jun-ichi Takimoto2021-11-221-1/+5
|
* 49182: Turn off correction inside command substition.Peter Stephenson2021-07-231-0/+7
| | | | | In "A=$(PWD)" we dont't have the information to correct at the level of the PWD subcommand, so don't try to do it as this causes a crash.
* 48504: use SEEK_ macros in fseek() callsOliver Kiddle2021-04-111-2/+2
|
* 45396: readhistfile: avoid thousands of lseek(2) syscalls via ftell()Michael Stapelberg2021-04-111-6/+10
|
* 45583/0003: chrealpath: Let caller decide how the return value should be ↵Daniel Shahaf2020-03-251-4/+7
| | | | allocated.
* 45583/0002: chrealpath: Make symlink resolution optional.Daniel Shahaf2020-03-251-5/+16
|
* 24581: Fix array assignments in shell word splitting and completion.Peter Stephenson2019-12-311-0/+10
| | | | | | Assignments after the first were not recognised as such as without the full parser the state didn't return to command position. Fix this in bufferwords() and the completion miniparser.
* 45004: Fix typos in commentsMartijn Dekker2019-12-111-2/+2
|
* users/24445: Add :P modifier to history code.Peter Stephenson2019-11-181-0/+10
| | | | | This was in the glob qualifier and variable code but got missed out of the separate history modifier function.
* 44435: Handling digita arguments for :h and :t.Peter Stephenson2019-06-201-12/+80
| | | | | | | Pick number of leading or trailing path components to substitute. Active in history, brace parameters, glob qualifiers. Add tests for all three environments.
* 44142: Fix hist_reduce_spaces bug.Peter Stephenson2019-03-191-2/+3
| | | | | | When there were as an unstripped comment on the line the pointer for stripping spaces could be bogus. Don't do any editing in that case.
* 44067: Make history read safer on interrupt.Yutian Li2019-02-181-3/+9
| | | | | Record if a read was interrupted and if so process it in full next time a read is needed.
* 42581(?): Fix ZLE inline history expansion.Peter Stephenson2018-04-041-2/+20
| | | | | | | Seen with magic-space. If there's a parse error in command subtitution we need to complete reading history to ensure the command line buffer is finished.
* 42322 (tweaked): Fix interactive_comments history with just a coment.Peter Stephenson2018-01-241-1/+12
| | | | | Don't discard the line from the history merely because it produced no synactic words.
* 42245: Abort last word on interactve comment.Peter Stephenson2018-01-081-0/+22
| | | | Last recorded word should be the previous one.
* 41747: Don't create hash entry if just checking existence.Peter Stephenson2017-09-251-2/+3
| | | | Pass a flag in indicating this case.
* 41239: Save and restore default history event on context stack.Peter Stephenson2017-06-071-0/+2
| | | | | This ensures that the default event set by an expansion in ZLE doesn't propagate to the command line expansion.
* 41164: Don't free a history entry if it's curline.Peter Stephenson2017-05-301-27/+15
| | | | | | This replaces 41113 / 94014ff65b with a simple local change for the immediate problem. It's not entirely clear if this reflects wider changes in the structure of the history code.
* 41113 (tweaked): Save current line linkage to history ring.Peter Stephenson2017-05-181-15/+27
| | | | | | | | | | When saving history state save whether the current history line is linked into the ring and remove it, and restore as appropriate later. This avoids surprises where the history ring is freed and incorrectly frees the current state in curline, which has a different allocation strategy. Original patch tweaked to make restoring more logical.
* 40248: suppress errors from zshaddhistoryhookBarton E. Schaefer2017-01-031-1/+2
| | | | and do not call it if no history entry will be written
* 40035: Cosmetic fixes for comments and documentation.Eitan Adler2016-11-291-1/+1
| | | | Mostly fixes to doubled words.
* 39958: Add extra byte to PATH_MAX allocations.Peter Stephenson2016-11-171-1/+1
| | | | | This ensures we've got enough space for a null, although this isn't always needed.
* 39545: Add some missing unqueue_signals().Peter Stephenson2016-10-031-0/+1
| | | | All of these are added simply to fit existing logic in other branches.
* 37838: use UNUSED() consistentlyJun-ichi Takimoto2016-01-301-1/+1
|
* 37819: zshaddhistory hook works for any history file write, even upon ↵Barton E. Schaefer2016-01-271-4/+11
| | | | keyboard interrupt
* 36909: in getargs(), sanity-check the offsets for start and end of the ↵Barton E. Schaefer2015-10-211-2/+16
| | | | requested words, in case of overflow
* 36468: Fix infinite loop exiting from Zle widget.Peter Stephenson2015-09-101-0/+6
| | | | | If the exit was while we were waiting to complete a lexical expression we might not exit from the loop.
* 35883: Don't attempt to back up over history if expanding aliasPeter Stephenson2015-07-241-1/+2
|
* 35854: ensure history character unget doesn't recurse infinitelyPeter Stephenson2015-07-231-2/+8
|
* Add non-metafied character length handling.Peter Stephenson2015-06-121-1/+1
| | | | | | | Use this in regex module and add test using $'\ua0'. Rename mb_metacharinit() to mb_charinit() as it does not involve metafied characters.
* 34961: clean up declarations of quote() and quotebreak()Barton E. Schaefer2015-04-251-3/+3
|
* 34817: Catch some errors earlier when reading history.Peter Stephenson2015-03-291-1/+5
| | | | | | | | Mostly for the case of an interrupt. Don't try to process words when we know something's gone wrong. Also abort history reading earlier on an interrupt.
* 34776: improve suppression of alias expansions from history.Peter Stephenson2015-03-251-34/+12
| | | | | Now uses the mechanism in use for other forms of suppression of sections of input.
* 34759: improve implementation of last commitPeter Stephenson2015-03-221-1/+2
|
* 34758: fix yet more history / command subst interaction.Peter Stephenson2015-03-221-1/+13
| | | | | | In general we need to wind back over the history text input inside command substitution because there's no level of the input mechanism between history and the lexer.
* 34742: history expansion inside command substitution failed.Peter Stephenson2015-03-191-2/+4
| | | | Needs the case of alias expansion separating out.
* 34623: free history more often if "remetafying"Peter Stephenson2015-02-231-2/+6
|
* 34615 + 34619: Remeta one frame earlierMikael Magnusson2015-02-231-35/+30
|
* 34604: Work around problem with changes in Meta characters.Peter Stephenson2015-02-221-3/+37
| | | | | | If reading in a file that contains characters that should be metafied but are not, fix up on the fly. Only need when using HIST_LEX_WORDS.
* 34389: fix parsing of ">!" when read from histfile with HIST_LEX_WORDSBarton E. Schaefer2015-01-251-1/+2
|
* 34365: History lockfile backoff: randomised time.Peter Stephenson2015-01-251-10/+31
| | | | | | | Time doubles on each lock failure. zsleep() provides microsecond resolution for sleep; uses nanosleep() if available, else select via means of existing tty poll function.
* 34319: fix alias expansion in history for command substitutionPeter Stephenson2015-01-181-6/+20
|
* unposted: another dubious comment in hist.c fixedPeter Stephenson2015-01-161-2/+2
|
* unposted: improve comment on hist_in_word().Peter Stephenson2015-01-161-2/+6
| | | | | Commit f2a2f28f7 was a bit less clear about how hist_in_word() was used than it could be.
* 32413: turn off history word marking in cmd substPeter Stephenson2015-01-161-2/+20
|
* hist: remove wrong NULL terminatorMikael Magnusson2015-01-101-1/+0
| | | | This actually writes a NULL to some arbitrary location in the caller function's stack. Found by Coverity (Issue 1255746).
* Rearrange context saving.Peter Stephenson2015-01-091-2/+86
| | | | | | | 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.