Subject: CVS commit: pkgsrc/shells/zsh
To: None <pkgsrc-changes@NetBSD.org>
From: Marc Recht <recht@netbsd.org>
List: pkgsrc-changes
Date: 03/28/2004 10:30:13
Module Name:	pkgsrc
Committed By:	recht
Date:		Sun Mar 28 10:30:13 UTC 2004

Modified Files:
	pkgsrc/shells/zsh: Makefile Makefile.common PLIST PLIST.dynamic
	    distinfo
Removed Files:
	pkgsrc/shells/zsh/patches: patch-ac patch-ad

Log Message:
Update to 4.2.0
Patch provided by Geoff C. Wing in PR 24918
ok'd by uebayasi@

New features between zsh versions 4.0 and 4.2
Configuration:

* upgraded to use autoconf post-2.50
* improved compatibility with other shells through shell options, builtin
  arguments and improved builtin option parsing

Syntax and builtins:

* new printf builtin
* `+=' to append to parameters which works for scalars, arrays and (with
  pairs) associative arrays.
* enhanced multiple parameter `for' loops: for key value in key1 value1 key2
  value2 ... maintaining full compatibility with POSIX syntax.
* Suffix aliases allow the shell to run a command on a file by suffix, e.g
  `alias -s ps=gv' makes `foo.ps' execute `gv foo.ps'. Supplied function
  zsh-mime-setup uses existing mailcap and mime.types files to set up suitable
  aliases. Supplied function pick-web-browser is suitable for finding a browser
  to show .html etc. files by suffix alias.
* new option `no_case_glob' for case-insensitive globbing.

Add-on modules and functions:

* zsh/datetime modules makes date formatting and seconds since EPOCH available
  inside the shell.
* zsh/net/tcp module provides builtin interface to TCP through ztcp builtin.
  Function suite for interactive and script use with expect-style pattern
  matching.
* zsh/net/socket module provides zsocket builtin.
* zcalc calculator function with full line editing.
* builtin interface to pcre library
* zsh/zselect module provides zselect builtin as interface to select system call

Completion system:

* general improvements to command and context support, low-level functions,
  display code.
* in verbose mode, matches with the same description are grouped
* highly configurable completions for values of specific parameters, specific
  redirections for specific commands
* support for bash completion functions (typically zsh native functions are more
  powerful where available)
* New completions provided for (some of these may be in later 4.0 releases):
  valgrind, tidy, texinfo, infocmp, Java classes, larch, limit, locale
  parameters, netcat, mysqldiff, mt, lsof, elinks, ant, debchange (dch), email
  addresses, file system types, Perforce, xsltproc. Plus many others.

Line editor:

* special parameters $PREDISPLAY, $POSTDISPLAY available in function widgets
  to configure uneditable text (for narrowing)
* recursive editing
* supplied widgets read-from-minibuffer, replace-string use these features
  (more  intuitive prompting and argument reading than 4.0)
* access to killed text via $CUTBUFFER and $killring
* supplied highly configurable word widgets forward-word-match etc., can set
  what constitutes a word interactively or in startup script (implement
  bash-style behaviour, replacing previous bash-* word widgets)
* interface to incremental search via $LASTSEARCH
* better handling of keymaps in zle and widgets
* better support for output from user-defined widgets while zle is active
* tetris game which runs entirely in zle
* several other contributed widgets

Local internal improvements:

* disowned jobs are automatically restarted
* \u and \U print escapes for Unicode
* read -d allows a custom line ending.
* read -t .
* line numbers in error messages and $PS4 output are more consistent
* `=prog' expands only paths, no longer aliases for consistency
* job display in prompts; `jobs' command output can be piped
* prompts: new $RPROMPT2, %^, %j, %y, enhanced %{, %}, %_.
* rand48() function in zsh/mathfunc for better randomness in arithmetic
  (if the corresponding math library function is present)
* $SECONDS parameter can be made floating point via `typeset -F SECONDS'
  for better timing accuracy
* improvements to command line history mechanism
* job table is dynamically sized, preventing overflow (typically seen
  previously in complex completions).
* many bugfixes


To generate a diff of this commit:
cvs rdiff -r1.44 -r1.45 pkgsrc/shells/zsh/Makefile
cvs rdiff -r1.7 -r1.8 pkgsrc/shells/zsh/Makefile.common
cvs rdiff -r1.11 -r1.12 pkgsrc/shells/zsh/PLIST
cvs rdiff -r1.2 -r1.3 pkgsrc/shells/zsh/PLIST.dynamic
cvs rdiff -r1.14 -r1.15 pkgsrc/shells/zsh/distinfo
cvs rdiff -r1.11 -r0 pkgsrc/shells/zsh/patches/patch-ac
cvs rdiff -r1.7 -r0 pkgsrc/shells/zsh/patches/patch-ad

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.