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

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

Re: ESS completion buffer


From: Stefan Monnier
Subject: Re: ESS completion buffer
Date: Mon, 19 Mar 2007 10:26:25 -0400
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.95 (gnu/linux)

> thing, but when I hit Tab in ESS buffer to see the completions, a new
> buffer emerges, and it _always_ hides my script buffer. That's
> annoying, because when I actually complete the command, the
> *Completions* buffer is still there. The same thing takes place even
> if I have 2 separate frames :-(  The usual completions buffer (like
> the one for opening files) always disappears when I complete the
> command.

Yes, it's annoying and I hope we can find a solution to that problem at
some point.  The problem is that, contrary to completion done in
a minibuffer, completion done inside a normal buffer doesn't have a clearly
defined "end".
E.g. you type

     fo[TAB][TAB]

it completes to "foo", you then type

     b[TAB]c

Now, maybe you will hit TAB again now, or maybe you're done with
the completion.

Now that I think about it, maybe a good heuristic would simply be to do
(right after popping up the completions buffer):

    (add-hook 'pre-command-hook
              (lambda ()
                (unless (memq this-command '(<foo-bar-complete cmds>
                                             self-insert-command))
                  <pop-down-completion-buffer>)))


-- Stefan


reply via email to

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