bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#5375: 23.1.91; eshell eshell-cmpl-load-hook bug


From: Chong Yidong
Subject: bug#5375: 23.1.91; eshell eshell-cmpl-load-hook bug
Date: Sat, 16 Jan 2010 12:46:03 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.91 (gnu/linux)

Leo <sdl.web@gmail.com> writes:

> On 2010-01-15 16:42 +0000, Chong Yidong wrote:
>>> The definition of eshell-cmpl-load-hook includes eshell-cmpl-initialize,
>>> which is ignored if user has something like:
>>>
>>
>>>   (add-hook 'eshell-cmpl-load-hook ...) in their .emacs.
>>>
>>> And without eshell-cmpl-initialize, TAB in eshell inserts the TAB char
>>> instead of completing commands, rendering the shell broken.
>>>
>>> I think this is a bug. If eshell-cmpl-initialize must be called, please
>>> move it to the right place. It seems to me it is unsafe putting it in
>>> eshell-cmpl-load-hook.
>>
>> Hmm, I'm afraid I don't know what you're talking about.  Could you try
>> to explain the problem more precisely, e.g. with a test case?
>
> 1. Emacs -q
> 2. Eval:
>    (add-hook 'eshell-cmpl-load-hook
>           (lambda ()
>               (add-to-list 'eshell-command-completions-alist ("LaTeX" . 
> "\\.TeX\\'"))))
> 3. M-x eshell
> 4. Type TAB to see what it does.

Thanks, I understand the problem now.  Normally, we give hooks a nil
default value for this exact reason, but unfortunately eshell doesn't
seem to follow the convention.  Apart from eshell-cmpl-load-hook, there
are lots of other such hooks in eshell that have a default value.

I'm not sure it's good to fix this right now---maybe post-23.2 would be
better.

In the meantime you can work around it by putting (require 'eshell) or
(require 'em-cmpl) before the call to add-hook.






reply via email to

[Prev in Thread] Current Thread [Next in Thread]