emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and,


From: Daniel Mendler
Subject: Re: [PATCH] (icomplete-vertical-mode): Add support for affixations and, annotations
Date: Tue, 1 Jun 2021 17:06:39 +0200

On 6/1/21 4:58 PM, Gregory Heytings wrote:
>> Regarding the annotations I disagree. The default *Completions* UI also 
>> annotates by default with not possibility for the user to turn this off, 
>> except by overwriting the `annotation-function` itself for example by 
>> advising `completion-metadata-get`.
>
> And this is (for me, and likely for others) one of the differences between 
> the *Completions* buffer and the minibuffer.  I'm not against making it 
> possible to display annotations in the minibuffer for those who want to 
> see them there, but hardcoding them is IMO wrong.

I am not against offering a customization option in the UI to
enable/disable annotations. Note that there is also the
`completions-detailed` variable, which guards some uses of the
`affixation-function`. The `annotation-functions` seem to be unguarded.

The design which I would prefer would be to check the
`completions-detailed` variable once in the completion UI (Icomplete,
default *Completions*) and depending on the value show the annotations
or not.

> And as I said users might want to display these annotations with their
> own formatting, e.g. to display only some but not all of them in the
> minibuffer.

This is not a good idea in my opinion, at least for the
`annotation-functions`. Annotations are only strings, there is not much
formatting the user can do here. But more general use cases could be
supported by a `decoration-function` (replacement for the current
`affixation-function`) we discussed a few days ago. The
`decoration-function` would return a list of semantic
annotation/decoration fields given a candidate.

Daniel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]