unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Dmitry Gutov <dgutov@yandex.ru>
To: Eli Zaretskii <eliz@gnu.org>
Cc: larsi@gnus.org, stefan@marxist.se, rms@gnu.org, 46627@debbugs.gnu.org
Subject: bug#46627: [PATCH] Add new help command 'describe-command'
Date: Sun, 28 Feb 2021 23:40:06 +0200	[thread overview]
Message-ID: <30bc14e5-febb-aab1-410b-5a56f9fe1843@yandex.ru> (raw)
In-Reply-To: <83v9acm7bk.fsf@gnu.org>

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	other threads:[~2021-02-28 21:40 UTC|newest]

Thread overview: 86+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-02-19  1:06 bug#46627: [PATCH] Add new help command 'describe-command' Stefan Kangas
2021-02-19  8:42 ` Eli Zaretskii
2021-02-19 17:42   ` Stefan Kangas
2021-02-19 18:38     ` bug#46627: [External] : " Drew Adams
2021-02-20  3:25       ` Stefan Kangas
2021-02-20  4:25         ` Drew Adams
2021-02-20  8:20           ` Eli Zaretskii
2021-02-20  7:44         ` Eli Zaretskii
2021-02-19 20:05     ` Eli Zaretskii
2021-02-20  4:10       ` Stefan Kangas
2021-02-20  8:18         ` Eli Zaretskii
2021-02-20 17:10           ` Stefan Kangas
2021-02-21 13:08             ` Lars Ingebrigtsen
2021-02-22 15:58             ` Eli Zaretskii
2021-04-28 13:58               ` Stefan Kangas
2021-04-28 14:17                 ` Stefan Kangas
2021-05-02 13:14                 ` Stefan Kangas
2021-02-20 12:56     ` Lars Ingebrigtsen
2021-02-20 12:59       ` Eli Zaretskii
2021-02-20 16:16         ` Eli Zaretskii
2021-02-20 14:04       ` Stefan Kangas
2021-02-20 16:06     ` Richard Stallman
2021-02-20 16:09       ` Eli Zaretskii
2021-02-20 20:06         ` bug#46627: [External] : " Drew Adams
2021-02-20 20:17           ` Eli Zaretskii
2021-02-20 20:54             ` Drew Adams
2021-02-20 16:39       ` Stefan Kangas
2021-02-20 16:49         ` Eli Zaretskii
2021-02-20 20:35           ` bug#46627: [External] : " Drew Adams
2021-02-20 20:46             ` Eli Zaretskii
2021-02-20 21:16               ` Drew Adams
2021-02-21 15:07                 ` Eli Zaretskii
2021-02-21 17:55                   ` Drew Adams
2021-02-21 18:11                     ` Eli Zaretskii
2021-02-21 18:30                       ` Drew Adams
2021-02-26 21:34             ` Drew Adams
2021-02-27  8:04               ` Eli Zaretskii
2021-02-27 17:46                 ` Drew Adams
2021-02-21  6:19         ` Richard Stallman
2021-02-21  7:18           ` Stefan Kangas
2021-02-21 15:27             ` Eli Zaretskii
2021-02-21 16:39               ` Howard Melman
2021-02-21 18:01                 ` bug#46627: [External] : " Drew Adams
2021-02-21 17:01               ` Stefan Kangas
2021-02-21 17:36                 ` Eli Zaretskii
2021-02-21 18:02                   ` Stefan Kangas
2021-02-21 18:21                     ` Eli Zaretskii
2021-02-21 19:57                       ` Dmitry Gutov
2021-02-21 20:13                         ` Eli Zaretskii
2021-02-21 23:46                           ` Dmitry Gutov
2021-02-22 15:18                             ` Eli Zaretskii
2021-02-27 20:38                               ` Dmitry Gutov
2021-02-28 17:27                                 ` Eli Zaretskii
2021-02-28 21:40                                   ` Dmitry Gutov [this message]
2021-03-01  6:05                                     ` Eli Zaretskii
2021-03-02  1:40                                       ` Dmitry Gutov
2021-03-02  5:31                                         ` Eli Zaretskii
2021-03-02 12:55                                           ` Dmitry Gutov
2021-03-02 13:47                                             ` Eli Zaretskii
2021-02-21 17:57               ` bug#46627: [External] : " Drew Adams
2021-02-21 17:33             ` Drew Adams
2021-02-21 13:06           ` Lars Ingebrigtsen
2021-02-21  6:27         ` Richard Stallman
2021-02-21  6:10     ` Richard Stallman
2021-02-21  6:27     ` Richard Stallman
2021-02-19 13:12 ` Lars Ingebrigtsen
2021-02-19 18:27   ` bug#46627: [External] : " Drew Adams
2021-02-19 18:43     ` Eli Zaretskii
2021-02-21  6:18     ` Richard Stallman
2021-02-21  6:27     ` Richard Stallman
2021-02-20  6:56 ` Richard Stallman
2021-02-20  7:14   ` Stefan Kangas
2021-02-21  6:19     ` Richard Stallman
2021-02-21  6:27     ` Richard Stallman
2021-02-21  7:17       ` Stefan Kangas
2021-02-22  6:23         ` Richard Stallman
2021-02-24  3:28           ` Stefan Kangas
2021-02-27 18:58           ` Dmitry Gutov
2021-03-01  5:18             ` Richard Stallman
2021-03-01 16:13               ` bug#46627: [External] : " Drew Adams
2021-03-02  6:29                 ` Richard Stallman
2021-03-02  6:50                   ` Eli Zaretskii
2021-03-03  5:55                     ` Richard Stallman
2021-03-03 15:26                       ` Drew Adams
2021-03-03 16:14                         ` Eli Zaretskii
2021-03-02 16:52                   ` Drew Adams

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

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=30bc14e5-febb-aab1-410b-5a56f9fe1843@yandex.ru \
    --to=dgutov@yandex.ru \
    --cc=46627@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    --cc=larsi@gnus.org \
    --cc=rms@gnu.org \
    --cc=stefan@marxist.se \
    /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 public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).