|
From: | Daniel Mendler |
Subject: | Re: Stepping Back: A Wealth Of Completion systems Re: [ELPA] New package: vertico |
Date: | Wed, 7 Apr 2021 17:17:07 +0200 |
On 4/7/21 4:15 PM, Philip Kaludercic wrote:
I think I've also mentioned that selection can be hierarchical. I think this too would be applicable to insert-char, considering how unicode divided into groups and subgroups.
I agree that hierarchical selection can be useful when browsing through a structure. However when doing a quick selection, I perceive it as slower. For example there is imenu, where you have to step through multiple layers of the hierarchy to reach the destination. A popular demand is for a flattened imenu which allows faster completion, see for example the package flimenu or counsel-imenu. But as soon as you flatten you certainly use the ability to browse the structure, so you have some point.
All of these features already exist, partially or only to the degree it is found to be necessary. Eg. ibuffer has hierarchies and the ability to filter by some preconfigured predicates. I think that there is a general pattern here that can be exploited to make the overall experience more uniform.
I wonder how all these use cases could be unified under a common API. I would certainly not want to lose the current fast, flat selection mechanism via completion as offered by `completing-read'.
Regarding predicates, there is an idea how this could be integrated with completion. One can implement a completion style which support a filter language, depending on the completion category. The completion style can then execute the filter predicates on the corresponding objects. However such an approach certainly takes it a bit far as completion styles are concerned. I think Icicles offers options to filter within completion based on predicates?
Daniel Mendler
[Prev in Thread] | Current Thread | [Next in Thread] |