From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Kangas Newsgroups: gmane.emacs.bugs Subject: bug#46627: [PATCH] Add new help command 'describe-command' Date: Sun, 21 Feb 2021 11:01:11 -0600 Message-ID: References: <835z2o4fes.fsf@gnu.org> <83k0r1xwyy.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="34305"; mail-complaints-to="usenet@ciao.gmane.io" Cc: larsi@gnus.org, rms@gnu.org, 46627@debbugs.gnu.org To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Feb 21 18:17:02 2021 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1lDsLu-0008oo-4r for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 21 Feb 2021 18:17:02 +0100 Original-Received: from localhost ([::1]:56378 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1lDsLs-0008RF-Uz for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 21 Feb 2021 12:17:01 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:59018) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1lDs7O-0003jH-Hq for bug-gnu-emacs@gnu.org; Sun, 21 Feb 2021 12:02:02 -0500 Original-Received: from debbugs.gnu.org ([209.51.188.43]:43156) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1lDs7O-0001mT-7f for bug-gnu-emacs@gnu.org; Sun, 21 Feb 2021 12:02:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1lDs7O-0000iD-4k for bug-gnu-emacs@gnu.org; Sun, 21 Feb 2021 12:02:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Stefan Kangas Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 21 Feb 2021 17:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 46627 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 46627-submit@debbugs.gnu.org id=B46627.16139268812688 (code B ref 46627); Sun, 21 Feb 2021 17:02:02 +0000 Original-Received: (at 46627) by debbugs.gnu.org; 21 Feb 2021 17:01:21 +0000 Original-Received: from localhost ([127.0.0.1]:54702 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lDs6i-0000hI-SD for submit@debbugs.gnu.org; Sun, 21 Feb 2021 12:01:21 -0500 Original-Received: from mail-pj1-f45.google.com ([209.85.216.45]:50780) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1lDs6f-0000h4-BY for 46627@debbugs.gnu.org; Sun, 21 Feb 2021 12:01:20 -0500 Original-Received: by mail-pj1-f45.google.com with SMTP id b15so2096392pjb.0 for <46627@debbugs.gnu.org>; Sun, 21 Feb 2021 09:01:17 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:in-reply-to:references:mime-version:date :message-id:subject:to:cc; bh=1l54h5/SbaqrtC6J9iH3LBNWxHCaeSkKINxmIBkLpaU=; b=TckMvqpg42v106YMudLrOvE4xr72JYNObKXy//r5PoSCXEQeagNg+jbmLpQ86h1vni ClC8E1O3dVPKVmh3TJQtXDFJ3sHJzXvXuWwDQSN4GLD812q3Yz1SpahWlRMPmz9HaspY 3itegKjQ2Clajn8fYaSLpG0TQbZ91vNxv9yiHKBDFXBCy1XNh/0vbm9/Ha4k+vO8+DWC /3U3wdoG1ywnkfDzdzG6nLkvIjNGxUtmT9BykVq6Q5j78d2n5Cd5lL1l/rM6fbLKwtGO PPQZ0d+xa+9TbZ8XNkOPe5N63guO90m0KVM28wuC1GbXB0uwe9vAL+a08mGIdQx+BTq5 v4YQ== X-Gm-Message-State: AOAM533rtNt2JVTLXqZpExJYnDwyGC8+fM0b6fksEHKJSbQvdSuHSE4F PVpv2Q0nL6N1l3xWNT/ryaf2vIrwAVBxq08dNcg= X-Google-Smtp-Source: ABdhPJwvYvVKM3jaUD5h8DvT0TQKrUdHO3+TsZAPgAUAqwFakO7VMqzAnn5mq/lu46WCdXlUSSe15gHtmm01LizU+oQ= X-Received: by 2002:a17:90a:1389:: with SMTP id i9mr18780269pja.104.1613926871541; Sun, 21 Feb 2021 09:01:11 -0800 (PST) Original-Received: from 753933720722 named unknown by gmailapi.google.com with HTTPREST; Sun, 21 Feb 2021 11:01:11 -0600 In-Reply-To: <83k0r1xwyy.fsf@gnu.org> X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:200508 Archived-At: Eli Zaretskii writes: >> I can't claim that it is the most effective technique in general. >> I would use it when I am certain that I almost know the name of a >> command -- I would know it if I see it. In such situations, firing up >> apropos is an extra step and not what I want. > > Can you explain how apropos is an extra step, compared to TAB > completion followed by browsing through the candidates? I see no > extra step here. So I type `C-h a foobar RET'. Now I realize I want to look for "foobaz", so `C-h a foobaz RET'. Now I realize that oops, I meant "barsnaz", etc. Typing this at a prompt is often faster for me. In particular, I don't need to rewrite everything for minor changes. Yes, I can be smarter and say `C-h a M-p DEL z RET', but I think we can agree that `DEL z TAB' is less typing. (BTW, with many completion frameworks you don't even need the TAB.) Plus I often look only for names, and don't need to waste screen real estate on documentation (which I would using apropos). > "C-h a" accomplishes that. It is no accident that it's the very first > Help command mentioned in the user manual. In addition, "C-h a" is > more powerful, as it accepts regular expressions and lists of > keywords, whereas completion has only crude and less powerful > approximations of those. Many popular completion frameworks have regexps, lists, fuzzy search, etc. But yes, our default one does not. >> (BTW, in the completion framework I often use, `ivy', there is a command >> to run the action associated with the minibuffer without leaving the >> minibuffer. That is, I run `C-h f', type in some text to complete on, >> and then hit `C-M-n' to repeatedly see the full documentation for a >> number of commands. > > You can likewise type "C-h a", then, with point on the command you > were after, type "M-x RET" or "M-x M-n RET" to invoke that > command. So the task of finding a command and then quickly invoking > it already has a well-developed solution in Emacs, one that is more > powerful than completion. Sure, you can do that. It is in my view often slower (and more typing) than the workflow I described, but of course that also depends on the circumstances. I don't see that we need to agree about the relative efficiency of these workflows. We can and do support both workflows well.