Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

[PATCH 1/2] Website Update: Add release notes for 4.3.11.



Hi all,

I just updated the website for 4.3.11. Please report any mistakes
you find.

Regards,
Simon
---
 News/index.html |    9 +++
 index.html      |    2 +-
 releases.html   |  168 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 178 insertions(+), 1 deletions(-)

diff --git a/News/index.html b/News/index.html
index d6331a2..94d366f 100644
--- a/News/index.html
+++ b/News/index.html
@@ -25,6 +25,15 @@
 <hr size=1 noshade>

 <dl>
+<dt><font size="+1"><font color="red">2010-12-20</font> : <b>Release 4.3.11</b></font></dt>
+<dd>Improved parameter expansion (${NAME:OFFSET} and ${NAME:OFFSET:LENGTH} for
+substrings and subarrays, (D) abbreviated directories, (Z) enhanced (z),
+{3..9..2} step in brace expansion, (P) adds word before each match),
+additional styles for zle_highlight ('suffix' for trailing /, 'special' for
+invalid multibyte chars), new option HIST_LEX_WORDS to perform "correct"
+splitting of history lines (not only on whitespace), multiple new POSIX_
+options to improve POSIX compliance and an improved SUN_KEYBOARD_HACK which is
+now called KEYBOARD_HACK.</dd>

 <dt><font size="+1"><font color="red">2009-06-01</font> : <b>Release 4.3.10</b></font></dt>
 <dd>Bug fixes and some minor improvements.</dd>
diff --git a/index.html b/index.html
index b04616c..2faf02d 100644
--- a/index.html
+++ b/index.html
@@ -22,7 +22,7 @@
   <td>
     <ul>
     <font size="+1" color="#600000"><b>Information</b></font>
-    <li><a href="News/">News</a> <font color=red><i>2009-06-01</i></font>
+    <li><a href="News/">News</a> <font color=red><i>2010-12-20</i></font>
     <li><a href="about.html">About these pages</a>
     <li><a href="releases.html">Release Notes</a>
     <li><a href="links.html">Useful links</a>
diff --git a/releases.html b/releases.html
index 8adbc94..1867fe7 100644
--- a/releases.html
+++ b/releases.html
@@ -27,6 +27,174 @@
 </table>
 <hr size=1 noshade>

+<h2>Changes between versions 4.3.10 and 4.3.11</h2>
+
+<p>
+Note also the list of incompatibilities in the README file.
+</p>
+
+<p>
+When the shell is invoked with the base name of a script, for example as
+`zsh scriptname', previous versions of zsh have used the name directly,
+whereas other shells use the value of $PATH to find the script.  The
+option PATH_SCRIPT has been added to provide the alternative behaviour.
+This is turned on where appropriate in compatibility modes.
+</p>
+
+<h3>Parameters, globbing, etc.</h3>
+
+<p>
+Parameter expansion has been enhanced to provide the ${NAME:OFFSET} and
+${NAME:OFFSET:LENGTH} syntax for substrings and subarrays present in
+several other shells.  OFFSET always uses zero-based indexing.  The only
+clash with existing zsh syntax occurs if OFFSET begins with an
+alphabetic character or `&amp;', which is not likely.
+</p>
+
+<p>
+The (D) flag in parameter expansion abbreviates directories in the
+substituted value.  The (q-) flag does minimal shell quotation of arguments
+for maximum human readability of the result.
+</p>
+
+<p>
+The (Z) flag in parameter expansion is an enhanced version of the (z)
+flag that takes an argument indicating how the string to be split
+is treated. (Z:c:) parses comments as strings; (Z:C:) parses comments
+and strips them; (Z:n:) treats newlines as ordinary whitespace: (z)
+has always treated unquoted newlines as shell delimiters and turned them
+into semicolons, though this was not previously documented.
+</p>
+
+<p>
+Numeric expansion with braces has been extended so that a step may be
+given, as in {3..9..2}.  The step may be negative as may the start and
+end of the range (this is also new).
+</p>
+
+<p>
+The glob qualifier P can be used to add a separate word before each
+match.  For example, *(P:-f:) produces the command line
+`-f file1 -f file2 ...'.
+</p>
+
+<p>
+Regular expression matches now use the same variables for storing matched
+components as shell pattern matching.  The function system now provides the
+function regexp-replace for replacing text using regular expressions.  The
+zle widget functions replace-string, replace-string-again, if defined with
+regex in the name (e.g. "zle -N replace-regexp replace-string"), perform
+regular expression matches.  In replacement text \& and \1 have the
+standard meaning.
+</p>
+
+<h3>Line editor and completion</h3>
+
+<p>
+The completion system now has a style path-completion.  Setting this to
+false inhibits completion of paths before the current path component,
+e.g. /u/b/z no longer completes to /usr/bin/zsh.  This is useful on systems
+where this form of completion is pathologically slow due to network
+performance.
+</p>
+
+<p>
+With the MULTIBYTE option, the line editor now highlights bytes in the
+input that are not part of a valid character in the current locale in hex
+as &lt;XX&gt; for hex digits X; highlighting is controlled by the "special"
+keyword in the zle_highlight array.  These can be distinguished from
+unprintable Unicode characters which also use "special" highlighting as the
+latter are always two or four bytes long, e.g. &lt;XXXX&gt;, &lt;XXXXXXXX&gt;.
+</p>
+
+<p>
+zle_highlight also controls highlighting of a removable completion
+suffix, e.g. the "/" automatically appended to directories.  This uses
+the keyword "suffix".
+</p>
+
+<p>
+The line editor now sets the variable ZLE_LINE_ABORTED if there is
+an error when editing the line.  The following code can be used
+to create a bindable editor widget to restore the aborted line:
+  recover-line() { LBUFFER=$ZLE_LINE_ABORTED RBUFFER=; }
+  zle -N recover-line
+and then either bind recover-line to a key sequence or use
+`M-x recover-line &lt;RET&gt;'.
+</p>
+
+<p>
+The parameter ZLE_STATE, available in user-defined line editor widgets,
+gives information on the state of the line editor.  Currently this is
+whether the line editor is in insert or overwrite mode.
+</p>
+
+<h3>Miscellaneous options</h3>
+
+<p>
+The new shell option HIST_LEX_WORDS causes history lines read in from
+a file to be split in the same way as normal shell lines, instead of
+simply on whitespace.  It's an option as although the result is more
+accurate it can take a long time when the history size is large.
+</p>
+
+<p>
+The shell option MONITOR can be set in non-interactive shells, and also in
+subshells (as created by surrounding commands with parentheses), turning on
+job control for that subshell.  The initial behaviour of a subshell is
+still to turn job control off, however if the new POSIX_JOBS option is set
+MONITOR remains active in subshells.
+</p>
+
+<p>
+The new shell option POSIX_CD, active in emulations of POSIX-based shells,
+makes the cd builtin POSIX-compatible.
+</p>
+
+<p>
+The POSIX_JOBS option already referred to has various other
+compatibility enchancements.
+</p>
+
+<p>
+The new shell option POSIX_STRINGS makes a null character in $'...'
+expansion terminate the string, as is already the case in bash.  This is
+not particularly useful behaviour but may become a POSIX requirement.
+</p>
+
+<p>
+The new shell option POSIX_TRAPS causes the EXIT trap to behave in the same
+way as in other shells, i.e. it is only run when the shell exits.
+</p>
+
+<p>
+The new shell option SOURCE_TRACE causes the shell to report files
+containing shell code that the shell executes directly, i.e. startup files
+or files run with the `source' or `.' builtins.
+</p>
+
+<p>
+The shell option SUN_KEYBOARD_HACK has been supplemented by a more general
+mechanism: the KEYBOARD_HACK variable defines the character to be ignored.
+</p>
+
+<h3>Add-on modules and function</h3>
+
+<p>
+The module zsh/system has a new "zsystem" builtin whose subcommands perform
+system level tasks.  Currently "zsystem flock" performs advisory file
+locking (for aficionados, this uses the fcntl() system call so works over
+the network on Linux).  This is a particularly convenient way of locking
+files for the length of a subshell.  "zsystem supports flock" provides a
+test for this feature.
+</p>
+
+<p>
+There is now a function system for recording and restoring recently
+entered directories in a persistent fashion, with support in completion
+and (if explicitly installed) dynamic directory expansion.  See the
+entry for cdr in the zshcontrib manual page.
+</p>

 <h2>Changes between versions 4.3.9 and 4.3.10</h2>

-- 
1.7.3.4

-- 
+ privacy is necessary
+ using gnupg http://gnupg.org
+ public key id: 0x92FEFDB7E44C32F9

Attachment: pgpZPnmueQCS5.pgp
Description: PGP signature



Messages sorted by: Reverse Date, Date, Thread, Author