From: "João Távora" <joaotavora@gmail.com>
To: Daniel Mendler <mail@daniel-mendler.de>
Cc: Dmitry Gutov <dgutov@yandex.ru>,
emacs-devel <emacs-devel@gnu.org>,
Stefan Monnier <monnier@iro.umontreal.ca>,
Juri Linkov <juri@linkov.net>
Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations
Date: Fri, 28 May 2021 14:17:12 +0100 [thread overview]
Message-ID: <CALDnm51+-VZNRH5vxoSy1bQkC5=gqEbJvVb7LOWeBk=nvsaRTQ@mail.gmail.com> (raw)
In-Reply-To: <f8424dfe-44fa-2490-b842-1b71c42d8647@daniel-mendler.de>
[-- Attachment #1: Type: text/plain, Size: 2711 bytes --]
On Fri, May 28, 2021, 13:32 Daniel Mendler <mail@daniel-mendler.de> wrote:
>
> Unfortunately this is not a satisfactory solution. I would like to
> decouple the components. It is better if the frontend does not have to
> know everything and all the field names of the backend.
>
Of course. And this doesn't happen.
>
If some filtering inside the marginalia is needed, just make the marginalia
field be a plist instead of a flat list.
Dmitry's completion-info-columns-function is the same idea in a separate
API. Also works, but I prefer this one, as columns is constraining design
on the backend side.
So no, you did not address this. You enforce a strong coupling between
> backend and frontend.
>
Check again.
>> The "waste of processing" argument by Dmitry is okay - I am not against
> >> a way to limit the number of returned fields.
> >
> > It's more than just "okay": it's pretty fundamental. I don't think it's
> > a question of limiting the number of returned fields, if the frontend is
> > unlucky one of those fields may take ages to calculate based on the
> > processing needed (many backends operate through networks or processes
> > to request information about completions).
>
> It is still a technical detail. But since we agree on this one, there is
> no need to discuss this further.
I don't know if you understand that same frontends might misfunction if
they request your full list of marginalia data and the backend has included
a slow field there. So the free-form marginalia or table plist should be
specified to be very quick to calculate.
For example in Marginalia we take some care to not compute particularly
> expensive annotations.
Which is a drawback. A frontend with async capabilities can choose to
request the expensive ones, too, for example.
But it is still way too costly to compute all
> annotations of all candidates at once. Marginalia works best when the
> frontend requests only a small number of annotations for the small
> subset of candidates being displayed, as is the case in Vertico or your
> newly revamped Icomplete-vertical-mode.
>
Yes but this is besides the point.
> Heh, :-) I think it is rather you who have to state the relevance of
> > that item to this discussion. There are lots of packages out there.
> > More than "what does it do" we want to know how it is positively or
> > adversely impacted by the decisions taken here, if at all.
>
> Of course, but as soon as I point you to a package specifically you can
> take a quick look ;) It is just a datapoint in the discussion.
>
I did take a quick look, but I was confused. I couldn't confidently make
any assertion about it based on the knowledge I gathered from looking at
its README.
[-- Attachment #2: Type: text/html, Size: 4854 bytes --]
next prev parent reply other threads:[~2021-05-28 13:17 UTC|newest]
Thread overview: 178+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-05-22 21:00 [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Daniel Mendler
2021-05-23 9:37 ` João Távora
2021-05-23 11:10 ` bug#48013: " Daniel Mendler
2021-05-23 19:55 ` João Távora
2021-05-23 20:14 ` Daniel Mendler
2021-05-23 21:04 ` João Távora
2021-05-23 21:31 ` Daniel Mendler
2021-05-23 21:54 ` João Távora
2021-05-23 22:38 ` Daniel Mendler
2021-05-24 22:46 ` João Távora
2021-05-25 3:06 ` Daniel Mendler
2021-05-25 9:21 ` João Távora
2021-05-26 18:12 ` João Távora
2021-05-26 19:32 ` Daniel Semyonov via Emacs development discussions.
2021-05-23 23:04 ` Daniel Mendler
2021-05-23 23:39 ` Stefan Monnier
2021-05-24 22:54 ` João Távora
2021-05-25 1:38 ` Stefan Monnier
2021-05-25 8:39 ` João Távora
2021-05-25 11:00 ` Gregory Heytings
2021-05-26 0:03 ` João Távora
2021-05-25 3:12 ` Daniel Mendler
2021-05-25 9:25 ` João Távora
2021-05-24 19:05 ` João Távora
2021-05-24 19:13 ` João Távora
2021-05-24 19:53 ` Daniel Mendler
2021-05-24 23:04 ` João Távora
2021-05-25 3:14 ` Daniel Mendler
2021-05-25 9:31 ` João Távora
2021-05-25 9:40 ` Daniel Mendler
2021-05-24 22:05 ` Dmitry Gutov
2021-05-23 23:37 ` Juri Linkov
2021-05-23 23:39 ` Juri Linkov
2021-05-24 10:26 ` Daniel Mendler
2021-05-24 22:07 ` Juri Linkov
2021-05-25 2:53 ` Daniel Mendler
2021-05-25 8:30 ` João Távora
2021-05-25 16:59 ` Juri Linkov
2021-05-25 17:46 ` João Távora
2021-05-25 20:37 ` Juri Linkov
2021-05-26 21:45 ` Juri Linkov
2021-05-26 22:20 ` Dmitry Gutov
2021-05-26 23:17 ` João Távora
2021-05-27 1:06 ` Dmitry Gutov
2021-05-27 7:29 ` João Távora
2021-05-27 13:15 ` Dmitry Gutov
2021-05-27 14:19 ` João Távora
2021-05-27 18:52 ` Dmitry Gutov
2021-05-27 20:58 ` João Távora
2021-05-28 8:08 ` Daniel Mendler
2021-05-28 8:34 ` João Távora
2021-05-28 9:06 ` Daniel Mendler
2021-05-28 10:09 ` João Távora
2021-05-28 11:16 ` Daniel Mendler
2021-05-28 11:41 ` João Távora
2021-05-28 11:55 ` Daniel Mendler
2021-05-28 12:15 ` João Távora
2021-05-28 12:32 ` Daniel Mendler
2021-05-28 13:17 ` João Távora [this message]
2021-05-28 13:55 ` Daniel Mendler
2021-05-28 18:46 ` Juri Linkov
2021-05-29 8:11 ` Daniel Mendler
2021-05-28 12:44 ` Dmitry Gutov
2021-05-28 13:14 ` Daniel Mendler
2021-05-28 13:57 ` Dmitry Gutov
2021-05-28 14:10 ` Daniel Mendler
2021-05-28 14:57 ` Dmitry Gutov
2021-05-28 16:01 ` Daniel Mendler
2021-06-01 9:56 ` João Távora
2021-06-01 11:27 ` Daniel Mendler
2021-06-01 12:00 ` João Távora
2021-06-01 12:37 ` Daniel Mendler
2021-06-01 14:30 ` João Távora
2021-06-01 14:40 ` Daniel Mendler
2021-06-01 15:49 ` João Távora
2021-06-01 16:00 ` Daniel Mendler
2021-06-01 18:47 ` João Távora
2021-06-01 19:03 ` Daniel Mendler
2021-06-01 22:32 ` João Távora
2021-06-01 20:22 ` Stefan Monnier
2021-06-01 22:39 ` João Távora
2021-06-02 2:40 ` Stefan Monnier
2021-06-02 7:53 ` João Távora
2021-06-02 13:48 ` Stefan Monnier
2021-06-01 23:04 ` Dmitry Gutov
2021-06-01 23:22 ` João Távora
2021-06-01 23:29 ` João Távora
2021-06-01 23:46 ` Dmitry Gutov
2021-06-02 0:02 ` João Távora
2021-06-02 11:48 ` Dmitry Gutov
2021-06-02 12:59 ` João Távora
2021-06-02 18:29 ` Dmitry Gutov
2021-06-02 18:52 ` João Távora
2021-06-02 14:19 ` complexity in minibuffer (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-06-02 14:33 ` João Távora
2021-06-02 15:06 ` complexity in minibuffer Stefan Monnier
2021-06-02 15:20 ` João Távora
2021-06-02 15:29 ` Dmitry Gutov
2021-06-02 15:37 ` João Távora
2021-06-02 18:11 ` Dmitry Gutov
2021-06-02 18:30 ` João Távora
2021-06-02 15:38 ` Stefan Monnier
2021-06-02 15:45 ` João Távora
2021-06-02 15:59 ` Daniel Mendler
2021-06-02 16:29 ` João Távora
2021-06-02 15:53 ` Daniel Mendler
2021-06-02 18:31 ` Dmitry Gutov
2021-06-02 19:03 ` João Távora
2021-06-02 20:15 ` Dmitry Gutov
2021-06-02 22:11 ` Juri Linkov
2021-06-03 9:04 ` João Távora
2021-06-03 20:28 ` Juri Linkov
2021-06-01 15:58 ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Stefan Monnier
2021-06-01 16:04 ` Daniel Mendler
2021-06-02 5:17 ` tumashu
2021-06-02 7:48 ` João Távora
2021-06-02 10:40 ` Dmitry Gutov
2021-06-02 11:04 ` João Távora
2021-06-02 11:28 ` Dmitry Gutov
2021-06-02 11:33 ` João Távora
2021-06-02 12:31 ` Dmitry Gutov
2021-06-02 13:16 ` João Távora
2021-06-05 1:48 ` Dmitry Gutov
2021-06-05 9:21 ` João Távora
2021-06-05 23:06 ` Dmitry Gutov
2021-06-05 23:25 ` João Távora
2021-06-05 4:23 ` Stefan Monnier
2021-06-05 9:26 ` João Távora
2021-06-05 13:02 ` Ergus
2021-06-05 23:47 ` Dmitry Gutov
2021-06-06 2:30 ` Stefan Monnier
2021-06-02 13:38 ` Stefan Monnier
2021-06-02 14:11 ` Dmitry Gutov
2021-06-02 14:54 ` Stefan Monnier
2021-06-02 15:07 ` João Távora
2021-06-05 1:08 ` Dmitry Gutov
2021-06-05 9:16 ` João Távora
2021-06-01 14:47 ` Gregory Heytings
2021-06-01 14:53 ` Daniel Mendler
2021-06-01 14:58 ` Gregory Heytings
2021-06-01 15:06 ` Daniel Mendler
2021-06-01 15:33 ` Gregory Heytings
2021-06-01 15:41 ` Daniel Mendler
2021-06-01 15:09 ` João Távora
2021-06-01 15:12 ` Daniel Mendler
2021-06-01 15:06 ` João Távora
[not found] ` <b49749e34d620592d83a@heytings.org>
[not found] ` <CALDnm53Wdnp0yAu6uQd8A=6-uLArCBEdj4F+aVzUdFOT00XMWw@mail.gmail.com>
[not found] ` <b49749e34dc4e4287593@heytings.org>
[not found] ` <87lf7t8wfz.fsf@gmail.com>
2021-06-01 15:24 ` Gregory Heytings
2021-06-01 23:05 ` João Távora
2021-05-24 23:02 ` Dmitry Gutov
2021-05-24 23:04 ` Dmitry Gutov
2021-05-23 21:35 ` Daniel Mendler
2021-05-23 22:42 ` Dmitry Gutov
2021-05-23 23:33 ` Stefan Monnier
2021-05-23 23:42 ` Juri Linkov
2021-05-24 23:24 ` Dmitry Gutov
2021-05-23 23:35 ` Juri Linkov
2021-05-24 3:23 ` Stefan Monnier
2021-05-24 10:34 ` Daniel Mendler
2021-05-24 16:22 ` Caching where-is-internal (was: (icomplete-vertical-mode): Add support for affixations and, annotations) Stefan Monnier
2021-05-24 16:31 ` Daniel Mendler
2021-05-24 19:53 ` Caching where-is-internal Stefan Monnier
2021-05-24 20:07 ` Daniel Mendler
2021-05-24 20:33 ` Stefan Monnier
2021-05-24 20:45 ` Daniel Mendler
2021-05-24 21:44 ` Stefan Monnier
2021-05-24 21:52 ` [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations Juri Linkov
2021-05-24 22:41 ` João Távora
2021-05-25 1:27 ` Stefan Monnier
2021-05-24 22:37 ` João Távora
2021-05-25 16:53 ` Juri Linkov
2021-05-25 17:24 ` Stefan Monnier
2021-05-25 17:40 ` João Távora
2021-05-25 20:01 ` Stefan Monnier
2021-05-25 20:27 ` Dmitry Gutov
2021-05-25 20:46 ` João Távora
-- strict thread matches above, loose matches on Subject: below --
2021-06-02 8:25 Manuel Uberti
2021-06-02 11:07 ` João Távora
2021-06-02 11:29 ` Manuel Uberti
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='CALDnm51+-VZNRH5vxoSy1bQkC5=gqEbJvVb7LOWeBk=nvsaRTQ@mail.gmail.com' \
--to=joaotavora@gmail.com \
--cc=dgutov@yandex.ru \
--cc=emacs-devel@gnu.org \
--cc=juri@linkov.net \
--cc=mail@daniel-mendler.de \
--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.