From: Daniel Mendler <mail@daniel-mendler.de>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gregory@heytings.org, dgutov@yandex.ru, emacs-devel@gnu.org,
monnier@iro.umontreal.ca, juri@linkov.net
Subject: Re: [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 2)
Date: Sun, 2 May 2021 13:01:37 +0200 [thread overview]
Message-ID: <ece6cb11-6794-2068-153f-89d5d157ab56@daniel-mendler.de> (raw)
In-Reply-To: <83a6pd8vg8.fsf@gnu.org>
On 5/2/21 9:07 AM, Eli Zaretskii wrote:
> We don't provide knobs for every behavior, indeed. But where the
> "right" behavior is a matter of personal preferences, and there are
> large enough groups of people who may want either of the possible
> behaviors, offering an option is TRT. Advice is not a valid
> replacement for a user option, because writing an advice is orders of
> magnitude harder than flipping an option, and requires the user to be
> proficient in ELisp.
I agree generally regarding advices and options. But here the user
already has the option to use the 'horizontal or 'vertical completions
format. My argument is that in case the user prefers to read
horizontally, the horizontal layout can be used and in case the user
prefers to read from top to bottom the vertical layout can be used.
1) horizontal
=group1=
cand1 cand2 cand3
cand4 cand5 cand6
=group2=
cand7 cand8 cand9
cand10 cand11 cand12
2) vertical
=group1= =group2
cand1 cand7
cand2 cand8
cand3 cand9
cand4 cand10
cand5 cand11
cand6 cand12
3) vertical with horizontal grouping
=group1=
cand1 cand4
cand2 cand5
cand3 cand6
=group2=
cand7 cand11
cand8 cand12
cand9 cand13
For now didn't see the need to add 3), the vertical format plus
horizontal grouping, as proposed by Juri. If most people agree that
option 3) should be provided we can either add this as a separate
formatting function or as an option. It may be easier to implement this
as a fully separate `completion-insert--vertical+horizontal-grouping`
function. If 3) is the preference of most people I guess we should even
make this the default, in order to avoid to unnecessarily add
configuration options which will be used rarely.
I think a wait and see strategy may be better until we got more
experience where the feature will be put to good use. Juri implemented a
patch which adds grouping to the read-char-by-name function. I hope
there will be more use cases.
In my Consult package I have quite a few use cases for the grouping, but
these commands almost always work best with the 'one-column layout due
their rich annotation functions. My preference is also influenced by my
usage of vertical minibuffer completion UIs (Vertico, Selectrum, Ivy).
However in case the annotations are turned off, the vertical and
horizontal layouts should also work well with the commands.
Daniel
next prev parent reply other threads:[~2021-05-02 11:01 UTC|newest]
Thread overview: 81+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-04-25 13:32 [PATCH] `completing-read`: Add `group-function` support to completion metadata Daniel Mendler
2021-04-25 19:35 ` Dmitry Gutov
2021-04-25 19:47 ` Daniel Mendler
2021-04-25 21:50 ` Dmitry Gutov
2021-04-25 22:10 ` Daniel Mendler
2021-04-25 22:40 ` Dmitry Gutov
2021-04-25 22:58 ` Daniel Mendler
2021-04-26 4:51 ` Protesilaos Stavrou
2021-04-27 16:53 ` Juri Linkov
2021-04-28 6:18 ` Protesilaos Stavrou
2021-04-25 23:33 ` Stefan Monnier
2021-04-26 10:01 ` Daniel Mendler
2021-04-26 13:50 ` Stefan Monnier
2021-04-27 1:46 ` Dmitry Gutov
2021-04-27 1:59 ` tumashu
2021-04-27 2:45 ` Daniel Mendler
2021-04-27 15:47 ` Dmitry Gutov
2021-04-27 3:41 ` Stefan Monnier
2021-04-28 0:08 ` Dmitry Gutov
2021-04-28 3:21 ` Stefan Monnier
2021-04-25 19:38 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH) Daniel Mendler
2021-04-25 20:45 ` Juri Linkov
2021-04-25 21:26 ` Daniel Mendler
2021-04-29 16:20 ` Juri Linkov
2021-04-29 16:52 ` Daniel Mendler
2021-04-29 17:07 ` Stefan Monnier
2021-04-29 17:13 ` Daniel Mendler
2021-04-29 22:54 ` Juri Linkov
2021-04-29 23:55 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 2) Daniel Mendler
2021-04-30 9:00 ` Daniel Mendler
2021-04-30 17:01 ` Juri Linkov
2021-04-30 18:11 ` Daniel Mendler
2021-04-30 18:30 ` Daniel Mendler
2021-05-01 19:57 ` Juri Linkov
2021-05-02 0:43 ` Daniel Mendler
2021-05-02 7:07 ` Eli Zaretskii
2021-05-02 11:01 ` Daniel Mendler [this message]
2021-04-30 16:51 ` Juri Linkov
2021-04-30 18:13 ` Daniel Mendler
2021-05-01 19:54 ` Juri Linkov
2021-05-02 0:32 ` Daniel Mendler
2021-05-02 21:38 ` Juri Linkov
2021-05-07 17:03 ` Juri Linkov
2021-05-07 17:55 ` Daniel Mendler
2021-05-08 6:24 ` Daniel Mendler
2021-05-08 8:45 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 4) Daniel Mendler
2021-05-08 9:10 ` Daniel Mendler
2021-05-09 17:59 ` Juri Linkov
2021-05-09 18:50 ` Daniel Mendler
2021-05-09 18:56 ` Stefan Monnier
2021-05-09 19:11 ` Daniel Mendler
2021-05-10 20:47 ` Juri Linkov
2021-05-11 7:51 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 5) Daniel Mendler
2021-05-11 17:59 ` Juri Linkov
2021-05-08 13:15 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 2) Stefan Monnier
2021-05-09 18:05 ` Juri Linkov
2021-05-09 18:37 ` Eli Zaretskii
2021-05-11 18:06 ` Juri Linkov
2021-05-11 18:44 ` Eli Zaretskii
2021-05-11 18:58 ` Daniel Mendler
2021-05-11 19:22 ` Eli Zaretskii
2021-05-11 19:46 ` Daniel Mendler
2021-05-11 19:59 ` Eli Zaretskii
2021-05-11 20:30 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 6) Daniel Mendler
2021-05-13 10:32 ` Eli Zaretskii
2021-05-13 11:45 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 7) Daniel Mendler
2021-05-20 9:39 ` Daniel Mendler
2021-05-20 17:53 ` Juri Linkov
2021-05-20 18:51 ` Daniel Mendler
2021-04-29 17:09 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH) Dmitry Gutov
2021-04-29 17:16 ` Daniel Mendler
2021-04-29 17:55 ` Dmitry Gutov
2021-04-29 18:31 ` [External] : " Drew Adams
2021-04-29 20:25 ` Dmitry Gutov
2021-04-29 22:15 ` Drew Adams
2021-04-29 22:28 ` Dmitry Gutov
2021-04-29 23:31 ` Drew Adams
2021-04-29 19:21 ` Daniel Mendler
2021-05-02 14:29 ` [PATCH] `completing-read`: Add `group-function` support to completion metadata (REVISED PATCH VERSION 3) Daniel Mendler
2021-05-02 21:49 ` Juri Linkov
2021-05-03 14:40 ` Daniel Mendler
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=ece6cb11-6794-2068-153f-89d5d157ab56@daniel-mendler.de \
--to=mail@daniel-mendler.de \
--cc=dgutov@yandex.ru \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=gregory@heytings.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 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.