From: Ergus <spacibba@aol.com>
To: Juri Linkov <juri@linkov.net>
Cc: Drew Adams <drew.adams@oracle.com>,
Stefan Monnier <monnier@iro.umontreal.ca>,
emacs-devel@gnu.org
Subject: Re: feature/completions-highlight-modifications e3c5b99 3/6: Add completions-highlight-mode initial implementation.
Date: Thu, 19 Nov 2020 11:50:52 +0100 [thread overview]
Message-ID: <20201119105052.kfichqojkhfwwsiz@Ergus> (raw)
In-Reply-To: <87d009kfmf.fsf@mail.linkov.net>
Hi Juri:
Thanks for your time ;)
On Thu, Nov 19, 2020 at 09:45:04AM +0200, Juri Linkov wrote:
>
>Thanks. Please see more comments.
>
>
>To be able to merge the branch to master, all its features should work
>without problems, but the TAB cycling feature is broken by design:
>sometimes it scrolls completions window, sometimes moves to next completion.
>This behavior is unpredictable to users.
>
>So I suggest first to implement more straightforward features,
>and leave such controversial features at the last thing to do.
>
I agree. The current tab design is IMO broken by itself but that's not
something I intended to change. In any case the arrow keys are there in
a more consistent way to move... and as we know, there will be never an
agreement on this. So it is better if we find a way to set that
unilaterally to what we think is better and add a custom to disable
it.... More extensions, better alternatives and complains will come out
with the time whatever we do.
>
>This could also allow the user to select what keys to dispatch
>to the *Completions* buffer. For example, TAB and S-TAB move
>to the next/previous completion in the *Completions* buffer,
>so it makes sense to do the same from the minibuffer as well
>(optionally).
>
I understand the idea, but IMO this is pointless. Because M-* or S-* is
not better than just pageup + whatever. I don't find the zsh behavior
confusing an that was my pattern from the beginning. I am worried
because adding more and more bindings (even with a prefix) may
a) Conflict with existing bindings/default current behavior
b) Lead some useless complex combinations like C-M-someting (that does
not work in the terminal very often BTW)
c) conflict with some frequently user-defined bindings. For example
S-arrow now is used to select the region and M-arrow to backward word
Maybe we should look more how zsh behaves... and try to mimic that as
much as possible. Because it is already pretty consisten
>
>Highlighting completion under point is useful on its own.
>It makes sense for the users to enable it separately from other features,
>like hl-line-mode is useful on its own.
>
>hl-line-mode is a mode because it can be useful in any buffer,
>but completion highlighting is useful only in the *Completions* buffer,
>so it can be a user option.
>
Yes, but this actually works as a hook, so we need to add/remove the
command to/from post-command-hook. That's easier and cleaner with a mode
(or a toggle-something command) than with a custom right?. (please,
remember I don't know the deep lisp secrets, so maybe there is actually
a better way)
>
>Adding much more code to simple.el is undesirable indeed, but
>for the completion highlighting feature it would take only
>~20 lines of code and option/face definition in minibuffer.el.
>
Indeed. I already did that on the beginning, but then I moved it
out. Actually If I can choose it will be better if all the *Completions*
stuff are moved to their own file... But that's a task for a good
developer, not me ;p. There is actuallu the completion.el I am not sure
what's there.
>All the remaining features need own package file indeed.
>BTW, the file name completions-highlight.el is too ugly
>as a package name. An example of a good package/mode name is
>icomplete.el. A new package that allows navigation
>of completions from the minibuffer could be like icomplete.el
>in other regards too: define the mode/keymap in the same way,
>use similar options/hooks, etc.
I agree, but we have display-fill-column, display-line-numbers... In any
case I don't care the name at all; so I will just ask here for names,
and when the war ends I just obey the winner orders.
next prev parent reply other threads:[~2020-11-19 10:50 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
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 [this message]
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=20201119105052.kfichqojkhfwwsiz@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).