Wayne Davison
bb738368ba
Honor the setting of the new HISTSAVEBYCOPY option when rewriting
...
the history file.
2005-03-18 22:40:28 +00:00
Clint Adams
0038b1a682
* 2073x: Src/Zle/zle_utils.c, Src/hist.c: modify zlegetline() and zlegetline
...
caller so that the octet-based and wide-character versions should return
the same string.
2005-01-22 04:03:05 +00:00
Peter Stephenson
88a37cc187
c.f. 20675: improve zle as a basis for Unicode.
...
unposted: update version to 4.2.3-dev-1
2005-01-14 13:04:47 +00:00
Wayne Davison
3ccc3e4bdc
Use the new gettempfile() function.
2004-10-21 00:33:50 +00:00
Wayne Davison
945a40f7e6
- Improved lockhistfile() to use the new gettempname() for a unique
...
filename instead of a .PID suffix.
- Use bicat() to build the $HISTFILE.LOCK filename.
- Put the $HOST value into $HISTFILE.LOCK in addition to the PID.
2004-10-18 19:07:30 +00:00
Wayne Davison
89eb92d8c2
- Added an arg to saveandpophiststack() to allow the caller to
...
specify what flags to send to savehistfile().
- Implemented the HFILE_NO_REWRITE support in savehistfile().
2004-10-01 19:48:53 +00:00
Peter Stephenson
6b1dc0f701
20331: Use internal zlong variables for consistency
...
20332: Add WIDGETSTYLE zle parameter
2004-09-09 10:12:42 +00:00
Wayne Davison
fb0937a69e
Marked unused parameters with the new UNUSED() macro.
2004-06-02 22:14:25 +00:00
Wayne Davison
3e7b092bc7
- pushhiststack() now takes a level value and remembers it. If it was
...
the locallevel (instead of -1), the history list is marked to auto-pop
on function exit.
- The saveandpophiststack() function now interprets a 0 arg as a request
to do an auto-pop.
2004-05-21 20:05:12 +00:00
Wayne Davison
e8eca2ee4b
- Added functions to push and pop the current history list, allowing
...
functions to more easily switch to their own private history.
- Changed the existing history push/pop code in savehistfile() (which
uses a separate history buf to allow it to rewrite the on-disk
version of the history file without disturbing the in-memory list).
2004-05-20 22:23:02 +00:00
Wayne Davison
319af86611
Added a comment to resizehistents() to explain why the function is
...
weirder than expected at first glance.
2004-05-18 18:45:05 +00:00
Wayne Davison
1ec2b5c096
Fix the potential for an infinite loop in lockhistfile() if the
...
link() calls fails for some other reason than EEXIST.
2004-05-11 21:45:36 +00:00
Peter Stephenson
815bc92148
a la 19209: zcalloc -> zshcalloc
2003-10-29 19:17:30 +00:00
Peter Stephenson
e65a811520
18941: history wrong after parse error during alias expansion
2003-08-11 13:19:48 +00:00
Peter Stephenson
98307b767c
17318: ${(z)...} added an extra space when the lexical analyser failed.
2002-06-14 17:52:05 +00:00
Wayne Davison
cbc7abb006
Added "savehistsiz" (for the new SAVEHIST special parameter), and used it
...
in place of getiparam("SAVEHIST").
2002-03-24 23:52:47 +00:00
Wayne Davison
663c6e794a
In putoldhistentryontop(), ensure that we can't return with "next" set to
...
the value we just put on top.
2002-02-22 20:40:29 +00:00
Wayne Davison
cfcf7bda8d
Yet another fix for prepnexthistent().
2002-02-20 19:25:14 +00:00
Wayne Davison
3b3bafac80
Fixed a just-introduced bug in prepnexthistent() when curline is in
...
the list.
2002-02-18 19:25:25 +00:00
Wayne Davison
d35af383df
When savehistfile() rewrites the history file, there was a potential for
...
losing the entire history file if we couldn't lock the file for reading
(it timed out) but we could lock the file for write (and wrote nothing).
2002-02-16 09:21:34 +00:00
Wayne Davison
e706f12937
Optimized putoldhistentryontop() so that when resizehistents() calls it
...
repeatedly while HIST_EXPIRE_DUPS_FIRST is set, it doesn't re-scan the
already-checked hist items (avoiding potentially slow operation).
2002-02-16 09:15:07 +00:00
Wayne Davison
c24a38cdaa
Improved resizehistents() so that it honors HISTEXPIREDUPSFIRST.
2002-02-13 18:13:14 +00:00
Clint Adams
7dea9669bb
16577: don't return a single dot as the path head of a slash.
2002-02-06 16:48:28 +00:00
Wayne Davison
c1b837b152
Improved readhistline() to reject binary data better. (16184)
2001-10-26 23:47:10 +00:00
Wayne Davison
34c4e565d0
Fix HIST_NO_SPACE when INTERACTIVE_COMMENTS is set and we get a
...
comment.
2001-10-15 18:42:52 +00:00
Bart Schaefer
63ecd0332b
Fix out-of-memory on corrupt history files.
2001-09-24 15:15:08 +00:00
Wayne Davison
2a754dbb61
With HIST_NO_STORE, don't ignore what looks like a history command if
...
we're really going to call a user-defined shell function.
2001-09-15 06:28:15 +00:00
Wayne Davison
fc89b8135a
+ Changed addhistnum() to return firsthist()-1 or curhist+1 on error.
...
+ Ignore the "r" command if HIST_NO_STORE is set.
2001-09-13 18:19:11 +00:00
Wayne Davison
f7e8ca1d96
When rewriting the history file, set histactive to 0 and restore it
...
when we're done. This prevents the loss of the file's last line
when a signal causes us to rewrite it. Also restore the value of
histsiz.
2001-08-07 19:53:19 +00:00
Wayne Davison
963466358a
Have prepnexthistent() remove any HIST_TEMPSTORE entry that is present.
2001-06-28 18:17:14 +00:00
Wayne Davison
b207aeeded
Don't mark a HIST_TMPSTORE entry with HIST_OLD so that the HFILE_FAST
...
algorithm in savehistfile() will recheck this hist num later.
2001-06-08 00:15:18 +00:00
Wayne Davison
f99520aeb0
Don't merge a HIST_TMPSTORE entry with a previous "duplicate" line.
...
Also, don't call addhistnode() on a HIST_TMPSTORE entry.
2001-05-19 09:22:10 +00:00
Wayne Davison
9f9ced8c62
+ Changed histreduceblanks() to preserve spaces at the start of the
...
line when HISTIGNORESPACE is set.
+ Flag a history entry with HIST_TMPSTORE when should_ignore_line()
returns true (instead of dropping it from the history immediately).
+ Get rid of old HIST_TMPSTORE entries when a new command is entered.
+ The hist-file-reading code now handles destroying a foreign
duplicate (when marked as duplicate by addhistnode()).
2001-05-15 16:32:25 +00:00
Wayne Davison
6066bd7eeb
Fixed an obscure local-history bug that could make the "history"
...
command output something that was slightly wrong. (14304)
2001-05-10 23:06:54 +00:00
Bart Schaefer
220ad9aa23
Parameter repairs, mostly for subscripting.
2001-04-20 06:13:35 +00:00
Wayne Davison
6d4a1bbc5c
Slightly optimized should_ignore_line() by using getjobtext() rather
...
than getpermtext().
2001-04-10 18:03:58 +00:00
Sven Wischnowsky
85de1eae0b
properly restore noaliases in bufferwords() (13530)
2001-02-26 09:43:08 +00:00
Peter Stephenson
cd02c345af
13280: NewImproved handling of colon modifiers w.r.t. paths
2001-02-19 10:26:52 +00:00
Sven Wischnowsky
757168e2c8
remove 13108 (trap queues); replace with signal queueing to ensure that user signal handlers are only executed when it is safe to run them (13365)
2001-01-16 13:44:18 +00:00
Bart Schaefer
9bf7fb75c5
Fix "vared -h" in shell scripts.
2000-10-21 03:15:36 +00:00
Wayne Davison
4be4c7575c
Don't call histreduceblanks() if the line didn't parse right.
2000-10-19 07:12:26 +00:00
Sven Wischnowsky
9bc05a5aa5
isalpha() -> ialpha(); avoid a compiler warning (12439)
2000-07-31 08:12:16 +00:00
Wayne Davison
c6a3c250c1
Renamed shouldIgnoreLine() to should_ignore_line().
2000-07-20 17:00:19 +00:00
Wayne Davison
01ea5e83c5
Support "builtin" in the HIST_NO_STORE check.
2000-07-20 07:09:34 +00:00
Wayne Davison
1ad69e3d44
Removed remhist() and HA_JUNKED, added an Eprog arg to hend(), and
...
added the shouldIgnoreLine() function that hend() now calls to figure
out if it needs to save the line or not.
2000-07-19 21:12:06 +00:00
Wayne Davison
b4c5de44f9
+ Got rid of the spaceflag variable.
...
+ Make sure that the curline.histnum variable is accurate at the end
of our history processing, even if we read in some foreign history
and/or if we replaced the prior line because it was a duplicate of
the current one. This enables the history (fc -l) command to work
properly, even if the current command was HIST_NO_SPACE-ed away.
+ Don't allow remhist() to remove the last line in the history if we
didn't store the current command.
2000-07-18 07:55:13 +00:00
Wayne Davison
656bce6bf5
Fix the gethistent() function and enhanced the reliability of the
...
SHARE_HISTORY option.
2000-07-17 02:07:23 +00:00
Wayne Davison
2b602a93e6
+ Needed to call unmeta() in a few spots that used the HISTFILE name.
...
+ The non-HAVE_LINK code in lockhistfile() was broken in a number of ways.
+ Added an extra unlink() call to the HAVE_LINK code in lockhistfile()
since (Linix at least says that) O_EXCL over NFS is broken.
2000-07-16 20:12:19 +00:00
Sven Wischnowsky
0982f4ee64
condition parsing with (z) flag
2000-07-13 12:28:12 +00:00
Sven Wischnowsky
c3082d546e
slightly improved (z) flag for parsing conditions; recognising glob flags in conditions still doesn't work (12237)
2000-07-13 08:42:10 +00:00