GNU bug report logs -
#36733
27.0.50; Eshell taking long time to enter directory after TAB completion
Previous Next
Full log
Message #62 received at 36733 <at> debbugs.gnu.org (full text, mbox):
29.02.2020, 04:30, "Ivan Kozlov" <kanichos <at> yandex.ru>:
>One further example: when complete-in-region-mode is active (again, _apparently_) and there is some text before the point, typing * (the asterisk character) runs some undocumented command which completes the argument if there is exactly one possible completion and doesn’t do anything otherwise, so it’s like TAB without the *Completions* buffer.
>
>So typing ls a<TAB>/* will produce ls a/b if b is the only file in a/, and ls a/ otherwise.
>
>This makes entering glob patterns (one of the most common tasks in shell) a *giant pain* with constantly hitting C-g and what not to make the completion stuff go away. I have no idea whether using * for the command was a deliberate decision, but it is really bad.
>
>Moreover, typing \ inserts \<TAB>! This one is inexplicable. It makes quoting characters a giant pain with constantly erasing the tab or cancelling the completion garbage as above.
I now realise what is actually going on here. Typing * and \ when completion-in-region-mode is active is exactly equivalent to activating this mode from a pattern ending in these characters.
In other words, a<TAB>* is equivalent to a*<TAB>, and a<TAB>\ is equivalent to a\<TAB>, which is actually supposed to allow escaping TAB.
Awful. The two cases should be treated completely differently.
This bug report was last modified 1 year and 50 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.