1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
zsh (5.4.2-1) unstable; urgency=medium
From the upstream README of 5.4.1:
> The default behaviour of code like the following has changed:
>
> alias foo='noglob foo'
> foo() { print function body; }
>
> When this is encountered in a start-up file, or other place where
> input was read line by line, "foo" is in command position and is
> expanded as an alias before the function definition takes place. In
> previous versions of the shell, this caused two functions "noglob" and
> "foo" to be defined. Any expansion of an alias in a function
> definition is nearly always an unintended effect, as well as hard to
> detect, so has been made an error. (The option setting
> NO_MULTI_FUNC_DEF turned this case into an error, but did not help
> with other cases and is off by default.) The alternative, of not
> expanding the alias, was rejected as it was more difficult to achieve
> in the parser and also would silently change the shell's behaviur
> between versions. A new option, ALIAS_FUNC_DEF, has been added, which
> can be set to make the shell behave as in previous versions. It is in
> any case recommended to use the "function" keyword, as aliases are not
> expanded afterwards.
The common error message triggered by this change looks as follows:
> zsh: defining function based on alias `foo'
> zsh: parse error near `()'
See https://bugs.debian.org/871816 for more information.
-- Axel Beckert <abe@debian.org> Fri, 11 Aug 2017 21:43:25 +0200
zsh (5.0.0-1) unstable; urgency=low
This update includes a rewrite of keyboard handling in `/etc/zsh/zshrc'.
The used method should be quite a bit more robust than the old one, and
should work out of the box for every terminal with a working terminfo entry.
If you do not want Debian's zshrc to mess with your keyboard setup, set the
following variable in your `.zshenv' file:
DEBIAN_PREVENT_KEYBOARD_CHANGES=yes
This change also removes the controversial vi-* bindings for the up and down
cursor keys (which was reported as #383737 and led to confusion with a
substantial number of users). If you want them back use the following snippet
in your `.zshrc' file (and without the above variable set):
for i in viins vicmd; do
bindkey -M "$i" "${key[Up]}" vi-up-line-or-history
bindkey -M "$i" "${key[Down]}" vi-down-line-or-history
done
unset i
-- Frank Terbeck <ft@bewatermyfriend.org> Sat, 03 Mar 2012 21:28:54 +0100
|