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
presence of some strings to decide how to build zsh. This is, of course,
a stupid thing to do, but we must not override config.status to "fix"
this build. This fixes PR 24483.
explicitly calls config.status to generate some Makefiles in certain
directories. This particular package has a need for executing the real
config.status, so we need to avoid overriding it automatically.
Use INSTALL_TARGET to install info files: this gives a proper
environment for USE_NEW_TEXINFO framework to work.
Fix makeinfo invocation for zsh-current via patch file so that
only _one_ info file is generated as PLIST seems to want it.
Bug fix release for stable version as well as a few completion
improvements. Also includes more current MASTER_SITES.
PR21938 by Geoff Wing <gcw at primenet dot com dot au>.
Makefiles simply need to use this value often, for better or for
worse.
(2) Create a new variable FIX_RPATH that lists variables that should
be cleansed of -R or -rpath values if ${_USE_RPATH} is "no". By
default, FIX_RPATH contains LIBS, X11_LDFLAGS, and LDFLAGS, and
additional variables may be appended from package Makefiles.
have it be automatically included by bsd.pkg.mk if USE_PKGINSTALL is set
to "YES". This enforces the requirement that bsd.pkg.install.mk be
included at the end of a package Makefile. Idea suggested by Julio M.
Merino Vidal <jmmv at menta.net>.
Bugfix release. Some added completion functions: e.g. rsync,
mozilla, some bash builtin functions.
From Geoff C. Wing, gcw at primenet dot com dot au in pkg/17946.
Summary of changes:
- removal of USE_GTEXINFO
- addition of mk/texinfo.mk
- inclusion of this file in package Makefiles requiring it
- `install-info' substituted by `${INSTALL_INFO}' in PLISTs
- tuning of mk/bsd.pkg.mk:
removal of USE_GTEXINFO
INSTALL_INFO added to PLIST_SUBST
`${INSTALL_INFO}' replace `install-info' in target rules
print-PLIST target now generate `${INSTALL_INFO}' instead of `install-info'
- a couple of new patch files added for a handful of packages
- setting of the TEXINFO_OVERRIDE "switch" in packages Makefiles requiring it
- devel/cssc marked requiring texinfo 4.0
- a couple of packages Makefiles were tuned with respect of INFO_FILES and
makeinfo command usage
See -newly added by this commit- section 10.24 of Packages.txt for
further information.
This is a minor bug-fix release, though some new functions have been added:
_bts Completion for Debian BTS
_chflags Completion for chflags(1)
_links Completion for links web browser
_samba
_sysctl
_user_admin
bash-backward-kill-word
This is a maintenance release for the (stable) 4.0 branch. Most of the
changes are bug fixes, including a fix for a bug which caused the test
suite to fail. On fully supported systems, all tests should now pass.
There is one new feature: the option KSH_TYPESET provides compatibility
with other shells for assignment arguments of `typeset', `export' and
related builtins.