emacs-devel
[Top][All Lists]
Advanced

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

RE: [External] : Re: Stepping Back: A Wealth Of Completion systems Re: [


From: Drew Adams
Subject: RE: [External] : Re: Stepping Back: A Wealth Of Completion systems Re: [ELPA] New package: vertico
Date: Sat, 10 Apr 2021 14:14:53 +0000

> > Right away, i.e. even without the user typing anything? that'd produce
> > a huge list of candidates, which would be impractical to display.
> 
> This is what e.g. ivy does on M-x, and it works well in practice.
> 
> I find it much better to display candidates this way, and I think it
> would be a step forward if Emacs dit this itself OOTB.
> 
> (It's also a popular choice elsewhere, try for example entering
> something into the search bar on Google or DuckDuckGo.  The same
> paradigm you see there is used in a lot of desktop software.)

(AFAIK, Ido also immediately shows completions, FWIW,
and it always has.) 

However, IMO it makes no sense to either do this or
not do it _systematically_.

Different users, different contexts, different commands,
and so on, can call for different such behaviors.  One
size just does not fit all.

Icicles has had both (automatic and on-demand) behaviors
since 2006, changeable at any time during completion.

And there are other such behaviors, such as showing
candidates not initially but only when you start typing
input (after a settable delay, if more than a settable
number of candidates), but not before that (and not if
there's only one candidate).

The same one-size-does-not-fit-all and
give-the-user-control guideline applies to many other
UI things, such as whether, when there's only one
matching candidate, it should automatically be chosen
and the minibuffer exited.  There are a bunch of such
things.

They should, in general, be handled by user options.
And in many/most cases there should also be the
ability to toggle them during completion (or cycle
them, if more than 2 possibilities).

reply via email to

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