emacs-devel
[Top][All Lists]
Advanced

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

Re: C-r and C-s in minibuffer should search completion


From: Stefan Monnier
Subject: Re: C-r and C-s in minibuffer should search completion
Date: Sun, 30 Mar 2008 00:01:26 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.0.60 (gnu/linux)

> Done.

> I also reverted the recent change in `call-interactively' that adds
> buffers to the list of defaults.

Thanks.

> However, there is one problem now: `C-x b M-n M-n' puts in the minibuffer
> the name of the current buffer because the current buffer is in the front
> of the buffer list acquired from the completion table in read-buffer.

This is a very minor problem.

> But it makes no sense to switch to the current buffer, so the case 'B'

Then switch-to-buffer should use a completion predicate that rules out
the current-buffer.  And the history functions should pay attention to it.

> ***************
> *** 1332,1337 ****
> --- 1333,1343 ----
>                             minibuffer-completion-table
>                             minibuffer-completion-predicate
>                             t)))
> + 
> +     ;; Remove the current buffer from the list of buffer completions
> +     (when (eq minibuffer-completion-table 'internal-complete-buffer)
> +       (setq all (cdr all)))
> + 
>       (if (listp def)
>       (append def all)
>         (cons def (delete def all)))))

No, this is a hack that will surely bite us down the road.  The minor
problem it's trying to fix does not justify breaking abstraction in
this way.


        Stefan




reply via email to

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