1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-08-19 05:31:05 +02:00
Commit graph

426 commits

Author SHA1 Message Date
Daniel Shahaf
1122d83a6e 36008: trap: Fix listing of traps created under non-alias non-canonical signal spelling 2015-08-08 21:43:49 +00:00
Daniel Shahaf
32669e77f4 unposted: Typo fix. 2015-08-04 10:41:25 +00:00
Peter Stephenson
eb08892dcf 35635: a bit more consistency about making elements local 2015-06-27 21:19:26 +01:00
Peter Stephenson
420bfcfc66 35623: All is_array assignments should be treated as having a value. 2015-06-27 17:46:03 +01:00
Peter Stephenson
42b9037ae5 35613: Handle array slices in typeset 2015-06-26 14:55:35 +01:00
Peter Stephenson
9265e49ccb typeset silent on repeated typeset x=() 2015-06-25 17:45:15 +01:00
Peter Stephenson
39b28980f3 various posts: Implement assignment parsing for typeset.
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-24 10:21:12 +01:00
Peter Stephenson
f1923bdfa6 Add non-metafied character length handling.
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-12 09:30:39 +01:00
Oliver Kiddle
ac26fafa03 35412: fix for - flag when formating strings with printf 2015-06-07 23:07:26 +02:00
Barton E. Schaefer
229bc3cc74 35350: extend "fc -I" to cover listing of "internal" history events only 2015-06-06 12:31:47 -07:00
Peter Stephenson
2abba7243a 35386: expand tabs where useful in builtins outputing function.
Also add to zed -f.

Option is -x <numm>.
2015-06-05 11:21:22 +01:00
Peter Stephenson
93e72ed1e9 35353: print -x and print -X expand tabs 2015-06-02 09:17:04 +01:00
Barton E. Schaefer
911edc5ea4 users/20238: add "fc -L" to operate only on the local shell history
Also avoid invoking the editor on empty results.
2015-05-30 15:22:09 -07:00
Peter Stephenson
2b08d0ed67 35318: POSIX_BUILTINS behaviour for getopts.
It needs to keep OPTIND, as well as the index within the
string pointed to by OPTIND, global in this case.
2015-05-28 18:32:39 +01:00
Peter Stephenson
ff19094669 35193: Add "unalias -a". 2015-05-18 16:57:08 +01:00
Oliver Kiddle
63ffbab84d Øystein Walle: 34841 (tweaked): allow grouping of thousands in printf format string 2015-05-14 22:56:24 +02:00
Peter Stephenson
85a4cf9b36 35110: don't implicitly initialize restricted integers to zero 2015-05-14 09:28:57 +01:00
Peter Stephenson
ec57c91b58 users/20203: nested functions in always blocks when exit pending 2015-05-13 16:17:04 +01:00
Mikael Magnusson
1e6fb1a4f0 Fix two bugs in typeset_setbase 2015-05-04 04:26:11 +02:00
Peter Stephenson
bf258a1c07 34992: POSIX fix for readonly variables.
With POSIXBUILTINS, variables can be marked readonly if unset.
Also, variables can't have the readonly flag removed.
2015-04-29 15:54:49 +01:00
Barton E. Schaefer
d4f50f2d18 34851: fix thinko from 34093 that short-circuited some "whence -m" searches 2015-04-06 10:26:57 -07:00
Barton E. Schaefer
2335d62548 34551: Avoid adding an extra "/" to the target path in cd_try_chdir() when the current directory is "/" 2015-02-15 20:20:03 -08:00
Mikael Magnusson
0209635832 34490: Fix leak on print -zf/-sf error 2015-02-10 13:03:51 +01:00
Mikael Magnusson
2dbbc88d0b 34488: Fix use-after-free for print -zf and print -sf 2015-02-10 13:03:49 +01:00
Peter Stephenson
12b813b589 34331: better handling of NULL in cd.
Problem was return from symbolic link expander in weird cases
where there file system isn't behaving itself properly.
2015-01-22 20:20:15 +00:00
Peter Stephenson
0e3548994e 34329: add -S option to which and where 2015-01-20 17:31:28 +00:00
Barton E. Schaefer
3495dc5c27 34213: in previous patch, do not change usepm if it is already set 2015-01-10 10:32:31 -08:00
Barton E. Schaefer
daa788d88b 34212: do not change unset-ness of special parameters when exporting them 2015-01-10 10:32:31 -08:00
Peter Stephenson
cfd91eac07 Rearrange context saving.
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.
2015-01-09 21:33:39 +00:00
Mikael Magnusson
bc55ddf364 Fix a typo in bin_print error message 2015-01-09 12:37:25 +01:00
Barton E. Schaefer
93846edb0d 34154/34155: reorder bin_print() to avoid leaking the output descriptor when incorrect/incompatible options were passed 2015-01-07 22:45:46 -08:00
Mikael Magnusson
1507719d0a 34112: typeset: fix leak of oldval
Found by Coverity (Issue 1255803).
2015-01-06 23:47:30 +01:00
Mikael Magnusson
5a9be69185 34113: whence: use dupstring to not leak memory
All other assignments to buf use the heap, and it's never freed. Found
by Coverity (Issue 1255786).
2015-01-06 23:47:12 +01:00
Mikael Magnusson
a150563fb0 34114: emulate: Handle aborting from mixed -L/-c correctly
Somehow Coverity found this (Issue 1255797, Failure to restore non-local value).
2015-01-06 23:45:09 +01:00
Barton E. Schaefer
f9cc5a6e56 34093: "whence" should always return nonzero when it finds that nothing matches its arguments 2015-01-06 09:33:44 -08:00
Peter Stephenson
454bb777cf users/19671: remove confusion with whence -a.
If the argument is a full path don't try to search the path for it.
2015-01-02 22:25:24 +00:00
Peter Stephenson
33d1439fdb users/19667: whence -S shows intermediate steps in symlink expansion 2015-01-02 21:32:51 +00:00
Jun Kuriyama
e12b515082 33984: bin_dirs() should use zputs() to print metafied directory names 2014-12-16 23:40:32 -08:00
Peter Stephenson
d067ebcacd 33876: etc.: Separate errors and keyboards interrupts
Combination of 12 commits from interrupt_abort branch.

Basic strategy is to introduce bits to errflag and to set and
reset them separately.

Remove interrupt status on return to main keymap.

Turn off ERRFLAG_INT for always block.

Restore bit thereafter: we probably need a new variable in order
to allow user interrupts to be reset in the always block.

Add TRY_BLOCK_INTERRUPT

This works the same as TRY_BLOCK_ERROR, but for a SIGINT, too.

Ensure propagation of SIGINT from exited job.

If received by foreground job, shell uses ERRFLAG_INT, not
ERRFLAG_ERROR, to set the new state.

Reset errflag before precmd()

Add always block in _main_completion to fix ZLS_COLORS

Ensures we get the right state of $ZLS_COLORS at the end of _main_complete
even if there's an interrupt.  However, the "right state" is a bit messy
as it depends on styles.
2014-12-11 09:41:17 +00:00
Barton E. Schaefer
53344183e1 33656: different algorithm for "whence -am" to produce results more consistent with "whence -m"
This uses the scanmatchtable routine to collect the names that match the
input pattern, then uses the original -a path search loop to generate
the output, to avoid duplicating test conditions and output formats.
2014-11-13 09:20:46 -08:00
Peter Stephenson
0ccbc3873f Handle -a option to whence in combination with -m. 2014-11-08 20:49:07 +00:00
Barton E. Schaefer
605a73e415 33429: disallow non-integer values for HISTSIZE and SAVEHIST of "fc -p", and fix crash on zero values for same 2014-10-10 23:12:57 -07:00
Oliver Kiddle
00a654af5c 33323: fix bug in removing math functions and complete -M option to functions 2014-10-02 19:29:32 +02:00
Peter Stephenson
d3d0910293 32918: add %. to ztrftime for use in prompts 2014-07-30 12:10:15 +01:00
Barton E. Schaefer
77119afe19 unposted (see 32892): 'fc -I' is an error 2014-07-24 08:33:13 -07:00
Peter Stephenson
880020ca2e 32624: use correct scaling factor (clock ticks) for times 2014-05-29 21:40:33 +01:00
Peter Stephenson
a06cd1766a 32479: POSIXTRAPS and implicit return values.
With POSIXTRAPS never propagate implicit return value.
In any case if not forcing a return value don't use lastval
from within the trap, use the one from the surrounding code.
2014-03-14 12:52:41 +00:00
Peter Stephenson
ed44ddad22 32246: option "shift -p" pops arguments from end of array 2014-01-11 19:31:29 +00:00
Peter Stephenson
c866657a3c 31706: standardize handling of "test ! <x> <y> <z>" 2013-09-06 20:37:40 +01:00
Barton E. Schaefer
935758ab7f 31637: be more selective about retry of lchdir() in cd_do_chdir()
Change of directory should not be retried relative to the current directory
when it has already failed along some path that does not refer to the
current directory.
2013-08-18 20:24:45 -07:00
Peter Stephenson
9ebf22b34b 31631: Use cygwin_conv_path if available.
Prefer it to cygwin_conv_to_posix_path.
2013-08-05 19:55:15 +01:00
Peter Stephenson
9d32c82da3 17591: fix error message for invalid fd in print -u 2013-07-29 10:44:07 +01:00
Peter Stephenson
fdf2867e5f 31444: Basic code for enable/disable -p 2013-06-13 18:38:33 +01:00
Barton Schaefer
1182a75e1b upon "read" of a short line, assign all variables passed as arguments.
It was noted that (print 1 2 | read one two three four) assigned values
only to $one and $two except in the case where EOF was reached.
2013-05-20 23:38:58 -07:00
Peter Stephenson
424ff5644b users/17754: failing to retie an array
and colon-separated scalar shouldn't be a fatal error
2013-04-10 18:14:41 +01:00
Peter Stephenson
555b95c5f3 31060:"+" before a flag for "functions" or
"autoload" should suppress display of function body.
2013-02-22 20:26:32 +00:00
Bart Schaefer
3ed9e4d1b9 unposted: tweak 30949 to fix buffer pointer 2013-01-08 07:18:50 +00:00
Bart Schaefer
dda51b9dbb 30949: restore "read -q" behavior lost by 27188 2013-01-06 18:55:00 +00:00
Bart Schaefer
cba5449c3d 30786: do not enter interactive history editing or command execution if
"fc" is called from a ZLE widget.
2012-11-08 16:50:38 +00:00
Peter Stephenson
4b86cc48f7 30726: make shell options passed to emulate stick along with the emulation 2012-10-11 20:14:01 +00:00
Peter Stephenson
8d9cb7f42e fix trivial typo with "functions +T" 2012-10-09 09:24:22 +00:00
Peter Stephenson
4e2cdd7956 30722: fix some cases where emulations or options were not propagated properly
from the emulate command
2012-10-07 19:46:46 +00:00
Peter Stephenson
321471891e 30718: emulate command evaluations should apply sticky emulation
to autoloads, too
2012-10-07 17:50:18 +00:00
Peter Stephenson
dbec4fa6cc 30692: allow autoload +X -m to work
change to _path_files to make it load in that fashion
2012-09-21 19:08:35 +00:00
Peter Stephenson
dd3a8ead16 users/17236: r and other fc output didn't metafy when listing to a file
other than stdout
2012-09-08 19:19:06 +00:00
Peter Stephenson
6f3ff6b653 30633: "functions -T" only traces marked function, not called functions 2012-08-21 18:03:01 +00:00
Peter Stephenson
268e56a144 30169: repeat "typeset -T" with same two first arguments is not an error 2012-08-16 14:00:11 +00:00
Peter Stephenson
129ebac4b0 Bart: 30560: unset ordinary array element by setting to null 2012-07-15 18:06:40 +00:00
Bart Schaefer
e1491b2542 30540: typeset flag handling with SECONDS 2012-06-30 17:40:18 +00:00
Peter Stephenson
d60de3001b 30469: Src/builtin.c: allow reverse listing of history using
fc -r, but don't allow reverse execution of commands at all.
2012-05-08 11:29:32 +00:00
Bart Schaefer
fa8a0e241c 30320: "emulate" accepts invocation-time flags; other small doc tweaks. 2012-03-07 06:10:42 +00:00
Peter Stephenson
4735ee67af 30127: forbid fc from executing history lines in reverse 2012-02-05 19:28:16 +00:00
Peter Stephenson
a6de37ec2b 29744: don't mess up non '-A' cases in read -E fix 2011-08-29 17:21:39 +00:00
Peter Stephenson
af071465b1 29731: fix read -AE, test that and read -Ae 2011-08-28 17:06:27 +00:00
Peter Stephenson
12e246495c 29413: "print -S" for saving to history with lexical word split 2011-06-03 19:54:43 +00:00
Peter Stephenson
d89361739a 29165: use term.h globally if needed at all. 2011-05-09 09:49:08 +00:00
Peter Stephenson
35ddd9c4ba users/15953: handle EINTR when using read -k or -q with -u or -p 2011-04-11 16:34:21 +00:00
Frank Terbeck
2eac105770 28853: Fix typo: preceed -> precede 2011-03-04 13:25:25 +00:00
Bart Schaefer
6e50d3d7db 28823: make it an error to tie the same scalar to two different arrays 2011-03-01 05:18:15 +00:00
Peter Stephenson
dbbcbf67cb 28791: exit on errors with special builtins with POSIXBUILTINS 2011-02-22 20:09:20 +00:00
Peter Stephenson
a89f0559c2 28590: make read return status non-zero on error 2011-01-07 10:05:35 +00:00
Peter Stephenson
bdb38058e4 28345: make ${(D)...} return a fully usable command line argument 2010-10-15 18:56:16 +00:00
Bart Schaefer
9530331b4f 28268: I/O to a terminated (or never created) coprocess emits a
"no coprocess" diagnostic, instead of either nothing or "bad file number".
2010-09-19 19:20:33 +00:00
Peter Stephenson
7850fc5a2c 28006: make zgetcwd() fall back to pwd,
only use "." if setting pwd
2010-06-08 08:51:03 +00:00
Peter Stephenson
147cedfb6f 27965, 27966: Improve ${(q)...}: newline appears as $'\n;, 2010-05-27 18:57:34 +00:00
Peter Stephenson
09960dc5b9 27951: Add $ZSH_EVAL_CONTEXT and $zsh_eval_contxt 2010-05-12 10:06:59 +00:00
Peter Stephenson
bbc88550db 27723: eval shouldn't modify non-zero return statuses 2010-02-19 12:26:08 +00:00
Peter Stephenson
7da34421c1 27675: Michael Hwang: fix crash in hash builtin 2010-02-07 18:49:28 +00:00
Peter Stephenson
8ac97f3308 27648, 267650/1, unposted README change:
Turn off repeat and turn on ulimit in emulation modes
2010-02-03 18:34:32 +00:00
Peter Stephenson
0d8a580951 users/14752: add #! line to zed
allow script run with -i to exit on return
2010-01-29 21:44:54 +00:00
Peter Stephenson
f30af94885 27357: fix compiler warnings in attr module
27358: fix error if $0 altered in sourced file
2009-11-06 22:38:47 +00:00
Peter Stephenson
6d4d1261a5 27240: fix fix for lexing in test builtin 2009-09-02 15:26:44 +00:00
Peter Stephenson
72f0b14a04 27188: improve read -q by using read -k code 2009-07-24 18:35:49 +00:00
Peter Stephenson
2c81423516 27181: extend POSIX_CD to handle target directory printing behaviour 2009-07-21 09:34:08 +00:00
Peter Stephenson
606cfb5a5e 27167: add POSIX_CD option to test "." after CDPATH 2009-07-19 19:07:14 +00:00
Peter Stephenson
351f6541e9 Eric Blake: 27151: cd handling with initial // for Cygwin 2009-07-15 08:43:25 +00:00
Peter Stephenson
5c5a388ed7 27087: change return codes from failed "." 2009-07-02 13:46:36 +00:00
Peter Stephenson
041057687f 27083: non-zero status on failures to find or execute file in "." 2009-07-01 15:07:25 +00:00
Peter Stephenson
10787467bc 27079: save lexical context in test builtin 2009-07-01 09:07:07 +00:00
Peter Stephenson
0f4c321380 26975: compilation issues in bin_print() 2009-05-20 09:53:13 +00:00
Peter Stephenson
d1abd3e7cf 26957: Fix some memory problems with read builtin
unposted: fix a WARN_CREATE_GLOBAL warning
2009-05-12 11:11:14 +00:00
Peter Stephenson
a6ff95d0c1 26954: read should pass through invalid multibyte characters 2009-05-07 16:04:21 +00:00
Peter Stephenson
aa3942d2d1 Michael Hwang: 26776: improved column alignment with print -c -P 2009-03-25 09:51:43 +00:00
Wayne Davison
bf25c3a43f 26735: Check some function return values for failures. Gets rid of
some compiler warnings, and improves error handling/notification.
2009-03-15 01:04:50 +00:00
Peter Stephenson
535afe3b2a 26614 + 26615: history -t <fmt> plus ztrftime "-" format modifier 2009-03-02 10:11:45 +00:00
Peter Stephenson
10182c766b c.f. 26586: rename yylex to zshlex and yytext to zshlextext 2009-02-25 10:23:58 +00:00
Peter Stephenson
c7d8b0dfb8 26546, 26556: sticky emulation for functions defined in emulate ... -c ...
environments, plus documentation
2009-02-11 20:42:15 +00:00
Andrey Borzenkov
665b7d1f93 26425: allow "emulate sh -c command" to eval command under sh emulation 2009-01-25 18:19:28 +00:00
Oliver Kiddle
61e9152b11 26028: close temporary file when aborting fc 2008-11-12 12:57:25 +00:00
Peter Stephenson
60b410fd7c "typeset -g <var>" should be silent even without TYPESET_SILENT 2008-11-05 13:01:56 +00:00
Oliver Kiddle
a9a516d219 25983: Fix bug in hash builtin with empty hash entry name 2008-10-31 23:43:36 +00:00
Peter Stephenson
135211b00b 25971: fix options handling for builtins that handle their own 2008-10-30 19:52:44 +00:00
Peter Stephenson
36d228b129 25937: builtins with no options should still ignore -- 2008-10-28 20:55:22 +00:00
Clint Adams
802cdd4f5e 25910: avoid dangling file handle in bin_print. 2008-10-18 14:13:15 +00:00
Clint Adams
b26cb5f98a 25896: remove small bit of dead code in execbuiltin. 2008-10-14 21:47:52 +00:00
Peter Stephenson
98b604282e 25817: make "fc -l" more careful to list all recent history 2008-10-06 18:15:36 +00:00
Peter Stephenson
59dd1491c6 users/13295, tweaked: dont reset line numbers when parsing strings, sometimes 2008-09-29 08:46:21 +00:00
Peter Stephenson
4a34c96289 25755/25756: Jörg Sommer: improved handling of module arguments
25759: fix dynamic named directory crash, static named directory consistency
2008-09-27 19:57:25 +00:00
Peter Stephenson
d3c4108f30 Rocky Bernstein: 25727: allow fc non-interactively
Add sanity test for empty history
2008-09-23 08:41:54 +00:00
Peter Stephenson
6951a1e0b2 25671: non existing variable in typeset -p should cause status 1 2008-09-15 08:57:25 +00:00
Peter Stephenson
b8a36eea87 25662: declare -p should never create arguments 2008-09-13 19:59:13 +00:00
Peter Stephenson
d37f9672cb 25651: make getpermtext() output indentation more logical 2008-09-11 17:14:38 +00:00
Peter Stephenson
0cba5ef62a 25595: fix line numbers with EVAL_LINENO,
try to fix oddities with funcstack and sourced files,
simplify use of caller element of funcstack
2008-09-03 09:08:18 +00:00
Peter Stephenson
50e4b43362 25568: Frank Terbeck & pws: invalid continue and break arguments
also tests for control commands
2008-08-31 13:35:28 +00:00
Peter Stephenson
2706eac454 25415: Make DEBUG_BEFORE_CMD the default.
Reuse ERR_EXIT in DEBUG traps.
Clean up trapreturn code.
2008-08-07 16:25:14 +00:00
Peter Stephenson
c4f33330f6 25409: fix eval's use of lastval 2008-08-06 19:51:04 +00:00
Peter Stephenson
0c9830d23c 25345, 25347: neaten interface from main shell to zle 2008-07-31 08:44:16 +00:00
Peter Stephenson
bb21e2531f following discussion, change fc error message 2008-07-27 18:28:44 +00:00
Peter Stephenson
897e8085ba 25338: disallow usage of current history line in fc 2008-07-25 08:55:26 +00:00
Peter Stephenson
0409391c7d 25272: add zshaddhistory hook 2008-07-17 11:27:55 +00:00
Peter Stephenson
1c29f641c6 Mikael: 25143: spelling corrections
25144: report supported bases
25139: fix number
2008-06-10 08:50:35 +00:00
Peter Stephenson
02e0a4755f 25040: zpty should display context information more like eval 2008-05-15 15:50:57 +00:00
Peter Stephenson
b86c191af5 25025: check radix for integer constants is between 2 and 36 inclusive 2008-05-14 10:48:26 +00:00
Peter Stephenson
bd70d684fc 25002: only ZLE should update attributes resulting from prompt expansion 2008-05-12 13:50:42 +00:00
Peter Stephenson
fbfbc7636f 24980: zmodload -mF 2008-05-08 12:07:04 +00:00
Peter Stephenson
2cec7aae44 24861 (with tweaks): logic to use alternative wcwidth() if needed;
slightly improve test for overwriting with combining characters.
2008-04-22 15:08:04 +00:00
Peter Stephenson
bc32da6a67 24786: handle read -t properly in zle via getbyte() 2008-04-03 15:20:18 +00:00
Peter Stephenson
50d9cdeae4 24768: add -q option to cd, chdir, pushd, popd
use in _canonical_paths
add 4.3.6 release note with this and other stuff
2008-03-28 09:59:06 +00:00
Peter Stephenson
e5a6543e6d overeagnerness to spot integers in cd after - and + 2008-03-02 21:21:52 +00:00
Bart Schaefer
5994edfc88 zsh-users/12600: reorder handling of -s/-d/-t options so that terminal
input modes are set before attempting a read-poll.  Also display any
prompt before read-polling.  Unposted: remove trailing whitespace from
all lines that had it.
2008-02-18 03:18:03 +00:00
Wayne Davison
172a81db90 Silence a compiler warning. 2008-01-21 19:15:39 +00:00
Peter Stephenson
b24d545294 users/12412: check for extra arguments in test and [ 2008-01-10 18:53:49 +00:00
Peter Stephenson
20607774dc 24275: fixes for multibyte characters on Solaris 2007-12-17 17:11:29 +00:00
Peter Stephenson
64c85ae68a users/12325: implement OSI rules for test & [, add more doc warnings 2007-12-12 18:43:28 +00:00
Peter Stephenson
04f42fdbdf 24210: set -o should abort on failure 2007-12-11 14:05:52 +00:00
Peter Stephenson
b9f3fc7c81 24068: attempt to make `printf "%g\n" -0 output "-0" 2007-11-06 11:04:34 +00:00
Peter Stephenson
1b52f47cf2 23665: autoloading of module features and related tweaks 2007-07-06 21:52:38 +00:00
Peter Stephenson
6ab77f00ff 23488: tidy up module interface and documentation 2007-05-29 17:01:07 +00:00
Peter Stephenson
b0c5f09169 see 23479: add initial features support for modules 2007-05-28 22:57:39 +00:00
Peter Stephenson
86ff81f82d 23444: handle multibyte characters in print -c/-C 2007-05-20 17:57:23 +00:00