emacs-devel
[Top][All Lists]
Advanced

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

Re: UP and DOWN with multi-line minibuffer history


From: Yuri Khan
Subject: Re: UP and DOWN with multi-line minibuffer history
Date: Wed, 16 Dec 2015 08:02:05 +0600

On Wed, Dec 16, 2015 at 6:32 AM, Juri Linkov <address@hidden> wrote:
> This consistency sounds right in theory and I'd definitely
> support your change after reading your description -
> if not tried it in real conditions: typing more than N keys UP
> to navigate to Nth history element is a huge annoyance.

However, if <up> at the first line moves point to the first line of
the previous item, you end up with another annoyance — <down> is no
longer an inverse of <up>.

> While in a normal buffer it's possible to mitigate it
> by counting lines and using a numeric argument for UP,
> or pressing and holding UP, or even resorting to the mouse,
> none of which would work in the minibuffer history.
>
> This explains why no other software is doing such awkward thing.

Other software also has pull-down histories, so one doesn’t have to
scroll the history while looking at it through a mailbox slit. You
pull down the history, select an item you want, press Enter, and it
gets copied into the input box where you can edit it before executing
again.

In Emacs UI conventions, it might work like this:

* Pressing some special key while in minibuffer would open a temporary
buffer showing the history and place the point in it.
* The item containing the point would be optionally highlighted with a face.
* The user would then move the point to the desired item.
* Pressing Enter would copy the item containing the point into the
minibuffer and bury or kill the history buffer.
* Attempting any editing command would copy the item containing the
point into the minibuffer, bury or kill the history buffer, and
perform the editing command in the minibuffer.
* Pressing C-g would just bury or kill the history buffer without
modifying the minibuffer contents.



reply via email to

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