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

Oh my God! They killed completion! YOU BASTARDS!

Oh my God! They killed completion! YOU BASTARDS!

I must object to the changes to completion behavior in zsh 3.1 as opposed to
the previous versions. First, on the matter of LIST_AMBIGUOUS, I would
suggest that if you're going to add a new option that dramatically alters
some existing rules that people have been been using for a long time, at the
very least you shouldn't turn it on by default! The principle of least
astonishment has been grossly violated here. I have spent considerable time
in the past fixing up my shell stratup files to get the thing to behave like
I want it to. If I _wanted_ to use a new option, I'd like the chance to read
about it first, and then turn it on if it sounds like a good idea. This
particular option, I think, is not a good idea, and I don't appreciate having
it forced upon me by a new default setting. Please, let's have a little
backward compatibility.

And it gets worse than that. In listing completions, zsh is now doing
something really stupid. I type "echo $ZSH_<TAB>" (with autolist turned on)
and what happens?

17:01 6 londo /home/pacman/src %echo $ZSH_ <--\
ZSH_NAME     ZSH_VERSION                      |
My cursor is sitting HERE! --/ WHAT THE HELL IS THAT? Who did this? Some
anti-zsh person must have infiltrated the development group and sabotaged it.
This behavior is wrong. It's SO wrong.. The vastness of your wrongness here
astounds me. All the languages in the world do not have enough words to
adequately describe the degree of wrongness exhibited by zsh 3.1 completion.
If shells were rated on a scale of 1=right (zsh 3.0) to 10=wrong
(COMMAND.COM), zsh's giant step backwards from 3.0 to 3.1 would earn it a
rating equal to the number of atoms in the universe.

This is like compiling a new version of vi, only to find out that it is an
emacs clone.

And this, unlike the first issue, can't even be fixed by toggling an option.
The description of ALWAYS_LAST_PROMPT is brief and confusing (how can a
completion key be given an argument? What does that mean? Is that a numeric
prefix? Hello! Is anybody home? Completion bindings generally don't exist in
vi command mode, and numeric prefixes generally don't exist in insert mode),
but I tried turning it on and off, and it had no effect that I could see.

Why do I consider this behavior wrong? Well, first, it's a shocking and
virtually undocumented change in default behavior, which can't be good.
Secondly, there is stuff on the screen below the prompt. Being down there, it
looks like it should be part of the command line I'm editing, but it isn't.

Please, undo this horrible thing. Put the prompt back at the bottom of the
screen where it belongs.

Alan Curry
Version: 3.1
GCS d? s++:-- a-- C++ UB+++L++++ P+ L+++>++++ E--- W-- N++ o K? w--- O? M--
V? PS+ PE+ Y+ PGP-(--) t* 5++ X+++ R- tv++ b-- DI- D++ G+++ !e h! r-->+++ y?

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