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

4012 commits

Author SHA1 Message Date
Bart Schaefer
465738fc25 47895: Remove trailing spaces from "print -ac" output lines. 2021-02-04 17:52:22 -08:00
Joshua Krusell
9120d1e841 47899: Improve error message from zparseopts. 2021-02-03 11:33:47 +00:00
GammaFunction
5d14b6eb71 47744: Fix vi repeats with hooks in use. 2021-01-27 10:04:40 +00:00
Peiyuan Song
bf8ca5f019 47840: make zpty module work on Cygwin 2021-01-20 13:33:52 +09:00
Bart Schaefer
3499a676fa 47704: fix scope for "private -p" 2020-12-02 20:14:45 -08:00
Mikael Magnusson
8773f01f2b 47494, 47495: Add -n option to strftime 2020-10-25 23:06:02 +01:00
Jun-ichi Takimoto
b6ba74cd4e 47301: Fix print -v metafication 2020-10-25 23:05:19 +01:00
Roman Perepelitsa
ead29c2a36 Fix a race condition in zf_mkdir -p
If ~/foo does not exist and `zf_mkdir -p zf_mkdir -p` is executed
concurrently in multiple shells, it was possible prior to this patch
for the command to fail with EEXIST.
2020-10-23 11:42:30 +02:00
Bart Schaefer
04bd9a44a7 Unposted - fix comment 2020-09-13 17:13:51 -07:00
Bart Schaefer
63b6398b70 47364: Enable extendedglob in pattern with ${(*)name/pattern/replacement}
Mikael Magnusson: 47382: Completion for 47364
2020-09-13 16:19:52 -07:00
Stephane Chazelas
24a82b9dad 47352 (+ extra test cases): fix %<n>K prompt expansion
Fixed a regression introduced by workers/30496 (5.0.3) whereby %2K would
no longer be the equivalent of %K{2} (%K{green}) in prompt expansion.

That was one missing case where the is_fg flag was not passed along to
match_colour() after code factorisation.

Add tests for the different syntax variants, using echoti
as a reference.
2020-09-10 07:34:56 +01:00
Daniel Shahaf
c6a8516361 github #64: Fix a build-time error when building against ncurses that hadn't been built with --enable-wgetch-events.
The --enable-wgetch-events codepath is experimental (according to
ncurses-6.2/INSTALL) and off by default (according to
ncurses-6.2/configure.in).  With that codepath disabled, the macro
KEY_EVENT is not provided, which (before this commit) manifested as a
build-time error:

    [  245s] gcc -c -I. -I../../Src -I../../Src -I../../Src/Zle -I.  -DHAVE_CONFIG_H -DMODULE -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -g -fPIE -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=600 -I/usr/include/ncursesw -fPIC -o curses..o curses.c
    [  246s] In file included from curses.c:210:
    [  246s] curses_keys.h:93:15: error: 'KEY_EVENT' undeclared here (not in a function); did you mean 'KEY_RESET'?
    [  246s]    93 |     {"EVENT", KEY_EVENT},
    [  246s]       |               ^~~~~~~~~
    [  246s]       |               KEY_RESET

curses_keys.h is only used for setting the "kevent" output parameter of
'zcurses input' (and the associated $zcurses_keycodes special variable),
so there's no harm in just leaving KEY_EVENT out of it.  (That codepath
deals gracefully with numeric values that don't correspond to any of the
known compile-time values, as that can happen whenever the build- and
run-time versions of ncurses don't provide the same set of KEY_* macros,
with or without relation to that configure flag.)

Reported by Martin Liska.
2020-08-28 02:54:51 +00:00
Daniel Shahaf
a2a0293d4f 47296 (+ unposted additional tests and comments): 'repeat' loops: Let the repeat count use $?.
It's an arithmetic expression.
2020-08-08 06:11:00 +00:00
Daniel Shahaf
d4da2c73f0 47300: Document the EC_NODUP, EC_DUP, EC_DUPTOK triplet.
All uses reviewed; no functional change.
2020-08-08 06:01:32 +00:00
Roman Perepelitsa
a8e31c07a7 unposted: comments explaining how hashtable must be created
See zsh-workers 46277, 46278, 46279.
2020-07-29 08:53:47 +02:00
Roman Perepelitsa
6f6363de94 46275: eliminate undefined behavior caused by redefinition of hashtable
struct hashtable has different set of data members in different
translation units. This is undefined behavior.
2020-07-29 08:27:15 +02:00
Roman Perepelitsa
41e318727e 46268: suppress a useless compiler warning around nice()
From nice(2):

    To detect an error, set errno to 0 before the call, and check
    whether it is nonzero after nice() returns -1.
2020-07-28 11:46:14 +02:00
Cedric Ware
4d7aa71d8e 46152: zsh/system: Re-allow '0' timeout in zsystem flock 2020-07-11 00:14:58 -05:00
Daniel Shahaf
cf134c15a0 46175/0003: Fix the RM_STAR_SILENT bug from the parent commit. 2020-07-05 11:11:59 +00:00
Matthew Martin
4e471c3f89 46168: Update $PWD and call chpwd hook after normalizing path 2020-07-03 21:17:58 -05:00
Peter Stephenson
4e0058afc5 users/24971: ${(-)var} sorts on signed integers 2020-07-03 21:05:46 +01:00
Daniel Shahaf
6f479b7685 unposted (after 46068): Fix a compiler warning.
The warning was:
.
    warning: passing 'const char *' to parameter of type 'void *'
    discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
2020-06-27 03:35:30 +00:00
Daniel Shahaf
0cffb0a6b3 46072 + 46136: Add the 'zle $widget -f nolast' syntax, to improve add-zle-hook-widget support for multiple hook functions.
See workers/46004 for the use-case.
2020-06-27 03:09:31 +00:00
Peter Stephenson
7865486994 46100: Fix =subst before =(subst)
This occurs with SH file expansion ordering.

Add test.
2020-06-26 17:32:02 +01:00
Daniel Shahaf
dd6e702ee4 46068 (tweaked) (was: github #57): region_highlight: Add memo= support.
This is useful when multiple plugins add region_highlight entries and
subsequently want to remove only their own entries.  Without this
functionality, recognizing one's region_highlight entries is not trivial
because the 'start' and 'end' offsets are modified by editing of $BUFFER
and the highlight specification may not be unique or distinctive.

The tweaks are as follows:

- Change zfree() to zsfree() per workers/46070.

- Remove the mem.c hunk, as it changed the signature of only one out of
  two alternative definitions of zsfree().  (The definition that hunk
  touched is the one that's not used by default.)
2020-06-25 11:50:33 +00:00
Peter Stephenson
af1c009c3e 46079: Ignore double quotes in math expressions.
Treat as white space.

This is required for compatibility and previously had no use in zsh
as it generated an error.
2020-06-23 12:17:32 +01:00
Peter Stephenson
baf4fa3621 46060: Fix spurious actions on exit status 130 or 131.
Ensure process has taken a signal before looking for SIGINT or SIGQUIT.
2020-06-18 09:27:05 +01:00
Peter Stephenson
3df604a4be 46026: Add CLOBBER_EMPTY option. 2020-06-09 18:07:01 +01:00
Peter Stephenson
d7e90f1c7c users/24909: Don't clean up special file list too early.
When running a function, remove special files used for substitution
after the function has run rather than before.
2020-06-08 20:52:53 +01:00
Mikael Magnusson
ed23768f77 typeset: Fix leaving corrupted entries in paramtab 2020-06-05 15:42:31 +02:00
Bart Schaefer
94e38548e3 45915: fix handling of hyphens in spckword() 2020-05-30 14:31:10 -07:00
Daniel Shahaf
fb1aa3fe1e 45923 (with memory leak fixed, cf. 45924): zprof: Don't tally all anonymous functions as though they were a single function named "(anon)".
Before:

    % zmodload zsh/zprof
    % () :
    % () :
    % zprof
    num  calls                time                       self            name
    -----------------------------------------------------------------------------------
     1)    2           0.08     0.04  100.00%      0.08     0.04  100.00%  (anon)

After:

    % zmodload zsh/zprof
    % () :
    % () :
    % zprof
    num  calls                time                       self            name
    -----------------------------------------------------------------------------------
     1)    1           0.04     0.04   50.45%      0.04     0.04   50.45%  (anon) [:3]
     2)    1           0.04     0.04   49.55%      0.04     0.04   49.55%  (anon) [:2]
2020-05-28 19:40:40 +00:00
Peter Stephenson
40723b3991 45900: Fix issues with escaped newline in $-substitution. 2020-05-23 18:01:26 +01:00
Mikael Magnusson
817d461932 Support ${name:offset:length} with an empty offset 2020-05-12 10:13:02 +02:00
Peter Stephenson
c486040220 45772: Restore locale on parameter scope end.
Check if relevant parameters changes and if so restore system settings.
2020-05-05 20:28:31 +01:00
Jun-ichi Takimoto
b87b7f367c unposted: add a comment about how to add a new resource 2020-05-03 18:38:36 +09:00
Daniel Shahaf
deca7c9285 45730: _arguments: Add the -0 flag, which makes $opt_args be populated sanely.
Also, write/extend docstrings for sepjoin() and zjoin().
2020-05-03 01:27:36 +00:00
Daniel Shahaf
4d2bcf2fe7 45729: internal: Add a second parameter to zlinklist2array(), analogously to hlinklist2array().
Will be used in the next commit.
2020-05-03 01:27:36 +00:00
Daniel Shahaf
34d69acbef 45737 (+ docs, and update the test from 45722): zstyle: When determining the weight (specificity) of a pattern, consider the number of components before anything else, as documented. 2020-05-02 01:12:07 +00:00
Cedric Ware
25c9b61a66 45708: zsh/system: Enable sub-second timeout in zsystem flock 2020-04-20 12:10:01 -05:00
Peter Stephenson
66ee4918a1 45660: Fix crash setting vi or emacs mode on command line.
Delay setting the option until the module system is set up.
2020-04-09 21:46:20 +01:00
Mikael Magnusson
8923d2a618 Add SHORT_REPEAT option 2020-04-02 07:42:16 +02:00
Peter Stephenson
2a9674862e 45616: Remove token from count argument to repeat 2020-03-26 20:54:37 +00:00
Daniel Shahaf
fc286a7c11 45583/0008: Extend tests to prove that what remains of xsymlinks() handles symlink loops gracefully. 2020-03-25 23:49:02 +00:00
Daniel Shahaf
dabfd1f1fb 45583/0007: Remove code that is now unreachable. 2020-03-25 23:49:02 +00:00
Daniel Shahaf
12347c26ce 45583/0006: Don't use xsymlinks() in 'whence -s'. 2020-03-25 23:49:02 +00:00
Daniel Shahaf
47fc5fe01f 45583/0004: Fix segfault on resolving symlink loops 2020-03-25 23:49:02 +00:00
Daniel Shahaf
12414d8052 45583/0003: chrealpath: Let caller decide how the return value should be allocated. 2020-03-25 23:49:01 +00:00
Daniel Shahaf
38b0e1ff7e 45583/0002: chrealpath: Make symlink resolution optional. 2020-03-25 23:49:01 +00:00
Peter Stephenson
2b1e5a3d22 45563: %z can be used for zlong in warnings and errors 2020-03-22 18:45:02 +00:00