From: Ergus <spacibba@aol.com>
To: Juri Linkov <juri@linkov.net>
Cc: Stefan Monnier <monnier@iro.umontreal.ca>,
Drew Adams <drew.adams@oracle.com>,
emacs-devel@gnu.org
Subject: Re: feature/completions-highlight-modifications e3c5b99 3/6: Add completions-highlight-mode initial implementation.
Date: Tue, 17 Nov 2020 01:46:53 +0100 [thread overview]
Message-ID: <20201117004653.thnefjkbj73ao4yk@Ergus> (raw)
In-Reply-To: <877dql59v0.fsf@mail.linkov.net>
On Mon, Nov 16, 2020 at 10:23:47PM +0200, Juri Linkov wrote:
>> With the current implementation this is not supposed to change. Of
>> course there is space for improvement and there are bugs, but so far,
>> all navigation still works in *Completions* buffer as usual because I
>> just added some commands. If there is anything that breaks the normal
>> previous behavior somehow, please tell me; because I put special
>> attention to prevent that.
>
>Sorry, I was not clear enough: I meant that the new feature doesn't
>allow in the minibuffer using the same navigation keys that are
>already available in the *Completions* buffer, e.g. <PgDown> and <PgUp>
>typed in the *Completions* buffer scroll it up and down.
>
I didn't change any default current behavior because I tried to prevent
complains when proposing to enable this by default in a future (as I
said "A man can dream"). In the code there is a macro
`with-minibuffer-scroll-window' that execute any command in the
Completions buffer only when it is enabled but also the
completions-highlight-minibuffer-map is set in completion-setup-hook,
so, after the completions are visible only.
Basically we only need to add the command you propose like
(defun ...
(with-minibuffer-scroll-window scroll-up-command))
And bind them... probably with a remap in
completions-highlight-minibuffer-map.
>For example, while in the minibuffer type 'TAB' that displays a very
>long list of completions, then type 'C-M-v', and see how it scrolls the
>*Completions* buffer.
When the list is too long the highlight is not enabled now. This can be
seen as an issue or a feature, because it keeps the previous behavior
and requires minimal changes in the minibuffer.el side.
>Better yet try typing <M-PgDown> and <M-PgUp>
>in the minibuffer, and see how it scrolls the *Completions* buffer
>up and down. I meant that a new feature could allow such page scrolling
>without the 'M-' modifier, by just using <PgDown> and <PgUp> in the minibuffer
>(and C-v/M-v as well) to scroll the *Completions* buffer.
>
<PgUp> will break the current behavior... there will be complains if we
try that and we will waste precious time in this mailing list trying to
get an agreement to go nowhere (as usual). In any case all them are
trivial to implement and even simpler with a remap.
C-M-v only scrolls Completions in some conditions. If you move forth and
back from another buffer then that one will be the one scrolled instead
of Completions. IMO this is a confusing behavior, but try to change that
and for sure will be the end of the world for some users.... so we need
more customs :).
>> We could add a custom to disable the new bindings in the *Completions*
>> if you think is better; because IMO the most important thing is to
>> "navigate" with arrows the completions from the minibuffer without
>> leaving it; and the overlay.
>
>Maybe a custom could provide some DWIM behavior by default,
>e.g. to activate these keys only when the *Completions* buffer
>is displayed.
>
This is also trivial to do... but I prefer to know if there is an
agreement in favor of the current unobtrusive changes before extending
it more.
next prev parent reply other threads:[~2020-11-17 0:46 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20201115023629.19537.77471@vcs0.savannah.gnu.org>
[not found] ` <20201115023631.C78AB20A27@vcs0.savannah.gnu.org>
2020-11-15 18:41 ` feature/completions-highlight-modifications e3c5b99 3/6: Add completions-highlight-mode initial implementation Stefan Monnier
2020-11-15 22:49 ` Ergus
2020-11-15 23:32 ` Stefan Monnier
2020-11-16 3:37 ` Ergus
2020-11-16 3:56 ` Stefan Monnier
2020-11-16 5:40 ` Drew Adams
2020-11-16 7:39 ` Ergus
2020-11-16 5:38 ` Drew Adams
2020-11-16 8:54 ` Juri Linkov
2020-11-16 10:27 ` Ergus
2020-11-16 20:23 ` Juri Linkov
2020-11-16 21:16 ` Drew Adams
2020-11-17 0:46 ` Ergus [this message]
2020-11-17 20:02 ` Juri Linkov
2020-11-17 20:52 ` Drew Adams
2020-11-18 19:43 ` Juri Linkov
2020-11-18 22:45 ` Drew Adams
2020-11-19 3:25 ` Ergus
2020-11-19 7:45 ` Juri Linkov
2020-11-19 10:50 ` Ergus
2020-11-20 9:32 ` Juri Linkov
[not found] ` <20201120145248.wmbv2zgbvs7bg25i@Ergus>
2020-11-21 19:30 ` Juri Linkov
2020-11-22 13:28 ` Ergus
2020-11-22 20:03 ` Juri Linkov
2020-11-22 23:09 ` Ergus
2020-11-23 9:14 ` Juri Linkov
2020-11-23 11:46 ` Ergus
2020-11-23 14:13 ` Jean Louis
2020-11-23 19:12 ` Eli Zaretskii
2020-11-23 19:44 ` Jean Louis
2020-11-23 20:54 ` Dmitry Gutov
2020-11-23 23:27 ` Ergus via Emacs development discussions.
2020-12-10 1:16 ` Dmitry Gutov
2020-12-10 8:23 ` Juri Linkov
2020-11-25 8:49 ` Juri Linkov
2020-11-20 14:24 ` Stefan Monnier
[not found] ` <20201120144940.p55brblxpuowslag@Ergus>
2020-11-20 15:15 ` Stefan Monnier
2020-11-16 16:03 ` Drew Adams
2020-11-16 20:28 ` Juri Linkov
2020-11-16 21:31 ` Drew Adams
2020-11-18 19:30 ` Juri Linkov
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201117004653.thnefjkbj73ao4yk@Ergus \
--to=spacibba@aol.com \
--cc=drew.adams@oracle.com \
--cc=emacs-devel@gnu.org \
--cc=juri@linkov.net \
--cc=monnier@iro.umontreal.ca \
/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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).