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

Re: HISTCHARS



> Somebody remind me why this has become a lower-case variable, and why it is
> not mirrored to/from the upper-case version?
> 
> Does anybody know what the comprehensive list of these seemingly arbitrary
> incompatibilities is?  I'm getting really tired of tweaking and re-tweaking
> my .zsh* files every time I find another of these stupid things.  We need a
> complete upgrade guide of some sort.

HISTCHARS was changed to histchars quite long ago because both bash and csh
use the lower-case version.

A complete list of changes would be useful indeed.  There is a NEWS file
listing the new features in zsh-2.5 (strange that some of these features
were completely unusable in 2.5 because of the bugs).  Perhaps it the
upgrage guite should go there.  An other difference which comes to my mind
is the ${~...} ${^...} and ${=...} parameter substitution syntax, which do
not toggle the relevant options anymore.  Also GLOB_SUBST and ${~...} do
not evaluate the substituted parameter expansions:

% foo='$bar' ; echo $~foo
$bar

instead of printing the value of bar (but ${(e)foo} can be use for that).


% foo=*

does not glob.  Use foo=( * ).

An other change is "${#foo}" gives the array length if foo is an array (use
"${(c)#foo}" to get the old behaviour).  It also caused problems that
PROMPT_SUBST now really works and expads backquote substitutions (it didn't
do that before beta17).  Also history expansion is disabled in single
quoted strings.  This may break some functions which used something like
sed '/pattern/\!d' since now the backslash is passed to sed.

There are probably many other changes I forgot (I did not use 2.5 too much
since it was too buggy, and 2.5 was the first zsh version I ever used).

Zoltan




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