all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Juri Linkov <juri@linkov.net>
To: Yuri Khan <yuri.v.khan@gmail.com>
Cc: Eli Zaretskii <eliz@gnu.org>, Emacs developers <emacs-devel@gnu.org>
Subject: Re: UP and DOWN with multi-line minibuffer history
Date: Thu, 17 Dec 2015 02:49:03 +0200	[thread overview]
Message-ID: <87bn9pgagg.fsf@mail.linkov.net> (raw)
In-Reply-To: <CAP_d_8UYgkgcVJsQ9WEYKw3YPOpwP==c5a3qmQ1EqxUiQe0u8Q@mail.gmail.com> (Yuri Khan's message of "Wed, 16 Dec 2015 08:02:05 +0600")

>> 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>.

Yes, you need to go through all the lines of the current history element
with <down> to reach the bottom line before going to the next element -
but only when reversing navigation directions that is less annoying than
doing this always, even when navigating in one direction.

>> 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.

This is already possible in Emacs, e.g. typing TAB with

  (completing-read "Minibuffer history: " read-expression-history)



  parent reply	other threads:[~2015-12-17  0:49 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-12-12 14:19 UP and DOWN with multi-line minibuffer history Eli Zaretskii
2015-12-12 15:03 ` Dmitry Gutov
2015-12-12 23:04   ` John Wiegley
2015-12-12 22:47 ` Eric Hanchrow
2015-12-12 23:20 ` Juri Linkov
2015-12-13 15:24   ` Eli Zaretskii
2015-12-14  0:07     ` Juri Linkov
2015-12-14  3:39       ` Eli Zaretskii
2015-12-14 23:45         ` Juri Linkov
2015-12-15  3:37           ` Eli Zaretskii
2015-12-16  0:32             ` Juri Linkov
2015-12-16  1:33               ` Dmitry Gutov
2015-12-17  0:45                 ` Juri Linkov
2015-12-16  2:02               ` Yuri Khan
2015-12-16  6:29                 ` Drew Adams
2015-12-17  0:49                 ` Juri Linkov [this message]
2015-12-15  3:43         ` Dmitry Gutov
2015-12-15 15:45           ` Eli Zaretskii
2015-12-14  9:25     ` David Kastrup
2015-12-14 16:00       ` Eli Zaretskii
2015-12-14 16:41         ` David Kastrup
2015-12-14 17:03           ` Eli Zaretskii
     [not found] <CABr8ebZDmnsCKyBnzU3sSDHefJ2_3uC4Omwg=N4qQ8h80vTxpw@mail.gmail.com>
2015-12-13  3:31 ` Eli Zaretskii
2015-12-13  5:38   ` Anders Lindgren

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bn9pgagg.fsf@mail.linkov.net \
    --to=juri@linkov.net \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=yuri.v.khan@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.