1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-10-07 09:21:18 +02:00
Commit graph

4183 commits

Author SHA1 Message Date
Oliver Kiddle
6502d05897 51320, 51383: fixes to prevent later reappearance of old attributes
Also associated test updates and a test fix for TERM=dumb.
2023-02-09 00:10:19 +01:00
Peter Stephenson
d6b027c3c1 51350: ${(S)...//#%...} didn't match the whole string 2023-02-06 14:16:17 +00:00
Peter Stephenson
76d095df9d 51306: error message in ${unset?error} should be expanded 2023-02-02 10:12:17 +00:00
Peter Stephenson
21baad1037 51307: Improve error on attempt to define function from aliased name 2023-02-02 10:09:21 +00:00
Bart Schaefer
f93ad02b94 51310: zle -F handlers preserve LASTWIDGET
Also fix email address in an old ChangeLog entry
2023-01-21 19:18:15 -08:00
Peter Stephenson
03292bceec 51278: make (i) subscript flag for zero-length string consistent 2023-01-16 11:10:02 +00:00
Oliver Kiddle
e2a39513dc unposted: mention attributes changes, fix renumbering mistake and allow completion to offer prompt escapes for PROMPT_EOL_MARK 2023-01-11 16:05:06 +01:00
Oliver Kiddle
246b7c7505 51295: where the end of a region coincides with the end of PREDISPLAY, don't extend it to include new text
Also fix issue where an int was used for a copy of attributes which
breaks if int is smaller than zattr.
2023-01-11 15:58:55 +01:00
Oliver Kiddle
b513ca21c8 51292: fix dynamic updates of region_highlight to account for PREDISPLAY 2023-01-10 21:17:24 +01:00
Oliver Kiddle
be2c91bbc3 51291: support for highlighting ellipses in the line editor 2023-01-10 21:13:52 +01:00
Oliver Kiddle
498b771a82 51290: fix display of control characters with SINGLE_LINE_ZLE set 2023-01-10 21:09:54 +01:00
Oliver Kiddle
cc672f1c3b 51289: don't disable non-colour attributes in prompts for SINGLE_LINE_ZLE and remove superfluous extra escapes to disable attributes 2023-01-10 21:06:55 +01:00
Oliver Kiddle
9d99a01367 51281: keep track of attributes left on at the end of left and right prompts and reapply them explicitly as appropriate 2023-01-10 21:02:16 +01:00
Oliver Kiddle
c01479a2ed 51280: add support for italic and faint fonts in the line editor 2023-01-10 20:57:03 +01:00
Oliver Kiddle
667ead3a64 51258, 51272: refactor handling of terminal attributes, removing OFF flags in zattr 2023-01-10 20:53:17 +01:00
Daniel Shahaf
81684e334d unposted: In a comment, replace a C variables glob pattern with its matches, for greppability. 2023-01-08 13:09:37 +00:00
Oliver Kiddle
35a2f155c3 51214: handle read -d and a delimiter that can't be decoded into a character
Terminate input at the raw byte value of the delimiter.
Also document and test the use of an empty string as a way to specify
NUL as the delimiter.
2022-12-17 00:37:19 +01:00
Jun-ichi Takimoto
2701ab161d 51207: fix for read -d when the delimiter is a byte >= 0x80 2022-12-17 00:35:36 +01:00
Oliver Kiddle
a73c705b0c 51212: remove STOUC() macro
This served as a workaround for ancient compilers where casts to
unsigned char were broken.
2022-12-16 23:28:10 +01:00
Oliver Kiddle
7fb6c133bf 51215: consume whole CSI sequences from the input
This affects CSI sequences that aren't explicitly bound but arrive
within the usual KEYTIMEOUT time limits. A single undefined-key widget
is run instead of unintended bindings for Escape and other characters in
the sequence.
2022-12-16 23:23:53 +01:00
Daniel Shahaf
56e7b147ad unposted: Follow-up to the last commit: Fix a typo in a comment. 2022-12-15 21:35:45 +00:00
Daniel Shahaf
5c9713603d unposted: zsh.h: lextok: Add an explanatory comment with a cross-reference. 2022-12-15 20:38:10 +00:00
Bart Schaefer
6d49734d46 51210: Clear errflag before calling EXIT trap
If this is not done, special cases such as failures in special builtins
or errors in math expressions skip the trap execution.
2022-12-13 21:11:33 -08:00
Peter Stephenson
67d4bf5bb9 51134: ! return doesn't change the return status 2022-12-12 10:30:13 +00:00
Bart Schaefer
2028539cb1 51161: correct errno after closing xtrace FD 2022-12-09 19:30:35 -08:00
Philippe Altherr
8086f10615 51094: consistent use of bit-manipulation for noerrexit value changes 2022-12-03 21:46:42 -08:00
Philippe Altherr
ab9c579ef9 51098: remove unreachable NOERREXIT_UNTIL_EXEC code and effects 2022-12-03 21:35:51 -08:00
Philippe Altherr
f253ea6b9d 51076: fix ERR_EXIT when used with "eval" or "source"; documentary comments 2022-12-03 21:14:26 -08:00
Philippe Altherr
259f1e944b 51071: fix ERR_RETURN for functions in conditional statements 2022-12-03 21:03:36 -08:00
Philippe Altherr
dd3ba3d599 51001: fix for ERR_EXIT following shell function; update tests 2022-12-03 20:44:10 -08:00
Philippe Altherr
d47b8480f0 51001: fix for ERR_EXIT with pipeline negation ("!"); update tests 2022-12-03 20:42:13 -08:00
Philippe Altherr
fda6fd9513 51001: fix for ERR_EXIT with "always" blocks; update tests 2022-12-03 20:35:58 -08:00
Philippe Altherr
23dc19f005 51001: Reverts 8839e969b, most of 1ba8714a, and d873ed60.
Also correct ChangeLog
2022-12-03 20:31:42 -08:00
Jun-ichi Takimoto
41b402d36d 51080: allow multibyte chars in glob qualifier (u:uname:) 2022-12-02 19:34:55 +09:00
Jun-ichi Takimoto
1be52186b4 51079: metafy sep in array subscript flag (s:sep:)
this enable sep to contain \0 etc.
2022-12-02 19:32:11 +09:00
Oliver Kiddle
c4d557bb0a 50934: use OSC 52 escape sequence when copying to "* or "+ vi buffers 2022-11-17 20:05:12 +01:00
Bart Schaefer
8839e969bf 50929: fix handling of ERR_RETURN bent by 50928. 2022-11-09 21:48:46 -08:00
Bart Schaefer
1ba8714a7a 50928: fix tests for 50897, mention behavior change in NEWS 2022-11-09 21:37:56 -08:00
Bart Schaefer
61610ea4bd 50922: fix additional cases of signals for current shell jobs on the right of a pipeline.
Backs out part of 188c5cd5 (workers/50874).  With this change, after a
new subshell is forked upon suspend of the right side of a pipeline, the
previous foreground subjob is resumed first and the new subshell remains
stopped until that job finishes.
2022-11-09 20:24:57 -08:00
Bart Schaefer
d873ed6026 50897: nonzero status of complex commands should trigger ERR_EXIT 2022-11-08 20:36:49 -08:00
Peter Stephenson
298919f43a users/28338: command substitution with alias edge case.
See added regression test.
2022-11-08 14:12:01 +00:00
Bart Schaefer
188c5cd518 50874: fix handling of tty signals for jobs in the current shell when waiting for the right side of a pipeline.
Reverts 15bf8ace (workers/50134).  Thanks to Jun T. for debugging assistance.

Issues came down to two things:
1. update_job() may be called on a process group leader even when a
   signal was NOT sent to any process in that process group.  This
   caused jobs to be resumed or backgrounded incorrectly or in the
   wrong order.
2. When there is a current-shell complex command (in braces) on the
   right side of a pipeline, external processes within it have their
   own process groups, but a tty signal sent to such a process should
   be treated as if received by the whole complex command.

This fixes:
* Suspend/resume of a foreground pipeline within a shell function
* Interrupt or suspend/resume of processes in a pipeline ending in { ... }
* Interrupt of such a pipeline after exit of the last process in { ... }

These affected interactive shells only (MONITOR set plus tty signals).
2022-11-06 11:25:47 -08:00
Jun-ichi Takimoto
f8d93888a8 50851: restore typtab when necessary
inittyptab() must be called when returning from a function with
"setopt localoptions MULTIBYTE|BANGHIST|SHSTDIN", and also in
function dosetopt() when setting these options (via $options, for
example). We intentionally did not take account of the options
EMACS/VI because these options are obsolete and their use is
not recommended.
2022-11-02 16:27:27 +09:00
Bart Schaefer
5b1c204c54 Unposted: Fix typo in comment 2022-10-23 16:28:14 -07:00
Wesley Schwengle
727b493e2b 50736: silence use-after-free warning (gcc-12.2) 2022-10-17 13:13:13 +09:00
Jun-ichi Takimoto
33938ad489 50668: treat 8bit chars correctly when multibyte is unset
The problem was found in character range, but may have existed in other
occasions
2022-09-27 15:20:24 +09:00
Jun-ichi Takimoto
1b421e4978 50658 + test: Enable to switch between C/UTF-8 locales in PCRE 2022-09-26 10:52:50 +09:00
Jun-ichi Takimoto
ac6257f150 50418: use setenv(3)/getenv(3) on newer macOS 2022-07-24 20:41:20 +09:00
Bart Schaefer
cb59dfb3a6 50379/50380: fix off-by-one side-effect of workers/49906 that broke $(jobs -l) 2022-06-21 18:04:45 -07:00
Bart Schaefer
f7441b4645 50368: adjust ztie'd bitflags so local variables cannot mess with database 2022-06-21 17:58:57 -07:00