GNU bug report logs - #61505
[PATCH] Handle anonymous commands in C-h K

Previous Next

Package: emacs;

Reported by: Eshel Yaron <me <at> eshelyaron.com>

Date: Tue, 14 Feb 2023 07:40:02 UTC

Severity: wishlist

Tags: patch

Fixed in version 30.1

Done: Stefan Kangas <stefankangas <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Eshel Yaron <me <at> eshelyaron.com>
Subject: bug#61505: closed (Re: bug#61505: [PATCH] Handle anonymous
 commands in C-h K)
Date: Wed, 10 Jan 2024 22:52:01 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#61505: [PATCH] Handle anonymous commands in C-h K

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 61505 <at> debbugs.gnu.org.

-- 
61505: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=61505
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Stefan Kangas <stefankangas <at> gmail.com>
To: Eshel Yaron <me <at> eshelyaron.com>
Cc: 61505-done <at> debbugs.gnu.org
Subject: Re: bug#61505: [PATCH] Handle anonymous commands in C-h K
Date: Wed, 10 Jan 2024 14:51:31 -0800
Version: 30.1

Eshel Yaron <me <at> eshelyaron.com> writes:

> Currently C-h K (Info-goto-emacs-key-command-node) throws an error when
> used on anonymous commands, for example:
>
> 1. emacs -Q
> 2. Evaluate this form:
>     (keymap-global-set "C-c m"
>                        (lambda ()
>                          (interactive)
>                          (message "foo")))
> 3. Type C-h K C-c m
> 4. Get this error:
>     Info-goto-emacs-command-node: Wrong type argument: symbolp, (closure (t) nil (interactive) (message "foo"))
>
> This patch makes Info-goto-emacs-key-command-node detect and handle such
> cases by printing an informative message instead of calling
> Info-goto-emacs-command-node.

Thanks, makes sense to me, so I installed it on master (9eed00c8e5a).

I changed the message to be slightly more clear in a followup commit to
look like this:

    C-c m invokes an anonymous command defined with ‘lambda’

I also made it use `substitute-command-keys'.

[Message part 3 (message/rfc822, inline)]
From: Eshel Yaron <me <at> eshelyaron.com>
To: bug-gnu-emacs <at> gnu.org
Subject: [PATCH] Handle anonymous commands in C-h K
Date: Tue, 14 Feb 2023 09:39:00 +0200
[Message part 4 (text/plain, inline)]
Tags: patch

Currently C-h K (Info-goto-emacs-key-command-node) throws an error when
used on anonymous commands, for example:

1. emacs -Q
2. Evaluate this form:
    (keymap-global-set "C-c m"
                       (lambda ()
                         (interactive)
                         (message "foo")))
3. Type C-h K C-c m
4. Get this error:
    Info-goto-emacs-command-node: Wrong type argument: symbolp, (closure (t) nil (interactive) (message "foo"))

This patch makes Info-goto-emacs-key-command-node detect and handle such
cases by printing an informative message instead of calling
Info-goto-emacs-command-node.


In GNU Emacs 30.0.50 (build 6, x86_64-apple-darwin22.2.0, NS
 appkit-2299.30 Version 13.1 (Build 22C65)) of 2023-02-11 built on
 esmac.lan
Repository revision: 838415525bd4e77a79e18af8e4f01ed004196c71
Repository branch: master
Windowing system distributor 'Apple', version 10.3.2299
System Description:  macOS 13.1

Configured using:
 'configure --with-native-compilation --with-json --with-xwidgets
 --with-mailutils --with-imagemagick --without-dbus'

[0001-Handle-anonymous-commands-in-C-h-K.patch (text/patch, attachment)]

This bug report was last modified 1 year and 132 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.