bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#46627: [PATCH] Add new help command 'describe-command'


From: Dmitry Gutov
Subject: bug#46627: [PATCH] Add new help command 'describe-command'
Date: Sun, 28 Feb 2021 23:40:06 +0200
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0

On 28.02.2021 19:27, Eli Zaretskii wrote:

We are not ignoring the current practices.  We are saying that people
who want their discovery based on completion will find the solution in
the completion alternatives we have already in Emacs, and if that
still doesn't fit the bill, in the 3rd-party packages out there.

Do you have in mind some particular "completion alternative we have
already" for 'describe-command'?

icomplete.el, completion.el, pcomplete.el, and the non-default styles
in completion-styles-alist come to mind.

All of these (with possible exception of completion.el, which I'm not familiar with) determine how completions are shown and/or how matching is performed, but the total set of completions (completion table) is determined by the command the user invokes.

So they don't include anything that looks like a replacement for 'describe-command'. But when there is a standard command with a good completion table, they indeed can enhance the user experience.

There are packages which create new commands (and might even have something similar to describe-command), but they are usually tied to a particular completion framework.

I
think Emacs provides, and will continue providing, ample
infrastructure for such extensions, and that's enough, IMO.  There's
no reason we should feel obliged to develop these features in Emacs.
We will never be able to satisfy everyone there anyway.

I believe the argument is that we can improve the default experience by
enacting some minor changes which correspond to what we know about how
users discover new commands (or functions) or remember existing ones.
And do that without pulling in major new functionality or features from
third-party packages (which goes against the "lean core" concept which
you probably know I prefer).

This loses the context.  Minor improvements were not the issue I
raised, the issue was the perceived attempt to build a significant
discovery framework based on completion.

"Significant discovery framework" is something very ill-defined. From where I'm standing, function and variable discovery based on completion is already in Emacs, and we sometimes provide minor fixes and improvement for it (such as this command). Sometimes we do request major changes that would help it as well...

There were also suggestions for admittedly more invasive changes (like
doing a bunch of renames in the standard library) which seem to have all
been rejected by the leadership. I understand the reluctance to change
things, but the argument about Emacs's extensibility and the 3rd party
ecosystem wouldn't apply to it either because no matter how convenient
and slick an external package might make completion experience, if the
functions are irregularly named, that will remain a problem anyway.

How is this relevant to the issue at hand?

...and see them thoroughly rejected. So I think this is relevant. But we might be talking about different things.

So you might disagree on whether this feature is important. But I hope
you can see how some aspects of the "whole new discovery framework"
(which I'm saying isn't new) cannot be effectively enacted by 3rd party
code without help from us here.

I have nothing against providing infrastructure for more sophisticated
completion, I was talking only about adding new commands which aim to
provide discovery based on completion,

But which otherwise duplicate existing commands? This is a valid concern, but I don't think we'll get a lot of them.

or extend existing
completion-related commands with the goal of providing discovery
through them.

Do you mean like extensions of the completion-at-point interface with that aim? I'm curious about possibilities, but so far we haven't really discussed them here.





reply via email to

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