summaryrefslogtreecommitdiff
path: root/NEWS
diff options
context:
space:
mode:
Diffstat (limited to 'NEWS')
-rw-r--r--NEWS66
1 files changed, 65 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index d7a817c1e..d5f6ab620 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,70 @@ CHANGES FROM PREVIOUS VERSIONS OF ZSH
Note also the list of incompatibilities in the README file.
+Changes since 5.9
+-----------------
+
+zsh 5.10 is dedicated to the memory of Sebastian Gniazdowski, who was
+an enthusiastic new community member interested in making zsh easy to
+extend with community code/`plugins'.
+
+Support for named references and namespaces has been added, similar to
+those features in ksh but with some notable differences. The `nameref`
+builtin and some ksh-equivalent namespace names are available by loading
+the zsh/ksh93 module. See the documentation of that module for more.
+
+The parameter expansion flag ! was added for the referred-to name of a
+named reference.
+
+The parameter ZSH_EXEPATH expands to the full path of the current zsh
+process, reliably on Linux, Mac, {Net,Free,Dragonfly}BSD and falls
+back to argv[0] elsewhere.
+
+The default keymap is now emacs. Users of the vi keymaps please check
+README to see if you are affected.
+
+In region_highlight and zle_highlight, italic and faint can be
+specified as font attributes for terminals that support them.
+
+Highlighting groups can be referenced in region_highlight,
+zle_highlight, WATCHFMT and completion explanation strings for
+common attribute combinations and a layer can be specified to
+indicate precedence where highlighted regions overlap.
+Highlighting groups are also supported in the prompt via a new %H
+prompt escape.
+
+Ellipsis markers shown by the line editor to indicate where the line
+doesn't fit in the terminal can be highlighted.
+
+The ERR_EXIT and ERR_RETURN options were refined to be more self-
+consistent and better aligned with the POSIX-2017 specification of
+`set -e`. For details on what exactly changed, see the list of
+incompatibilities in the README file.
+
+Non-forking command substitutions with ${ ... } and ${| ... } are now
+available, and the latter extended with ${{param} ... } to return the
+result via assignment to the named param rather than always via $REPLY.
+
+The shell now uses monotonic time instead of wall time for most
+internal time tracking, making it immune to system clock changes due to
+NTP, etc. For the most part this is transparent to users. However, as a
+side effect, some features like $SECONDS and the time keyword gained
+(nominal) nanosecond precision.
+
+The zsh/zutil module's zparseopts builtin learnt a -v option which can
+be used to specify the array of arguments to parse instead of $@.
+
+The zparseopts builtin also learnt a -G option which enables GNU-style
+argument parsing ('--opt=arg', etc.).
+
+The module zsh/pcre has been updated to use the pcre2 library.
+
+The new zsh/random module defines an SRANDOM parameter, zrand_float()
+and zrand_int() math functions.
+
+The shell keyword time now works on builtins, assignments, and
+current-shell actions.
+
Changes since 5.8.1
-------------------
@@ -49,7 +113,7 @@ negative numbers.
The (*) expansion flag enables EXTENDED_GLOB for pattern matching.
For example, ${(*)sample/(#b)*(pat)*/${match[1]}} uses backreferences
even if EXTENDED_GLOB is not otherwise set. However, this does not
-descend into nested exapansions, and doubling as (**) does not disable
+descend into nested expansions, and doubling as (**) does not disable
EXTENDED_GLOB.
The compinit function learnt a -w option to explain why compdump runs.