GNU bug report logs - #68947
30.0.50; Gnus article mode keybindings

Previous Next

Package: emacs;

Reported by: Pranshu <pranshusharma366 <at> gmail.com>

Date: Tue, 6 Feb 2024 08:54:01 UTC

Severity: normal

Found in version 30.0.50

Full log


Message #17 received at 68947 <at> debbugs.gnu.org (full text, mbox):

From: Eric Abrahamsen <eric <at> ericabrahamsen.net>
To: Pranshu <pranshusharma366 <at> gmail.com>
Cc: 68947 <at> debbugs.gnu.org
Subject: Re: bug#68947: 30.0.50; Gnus article mode keybindings
Date: Sat, 10 Feb 2024 10:09:14 -0800
On 02/07/24 22:19 PM, Pranshu wrote:
> Eric Abrahamsen <eric <at> ericabrahamsen.net> writes:
>
>> Pranshu <pranshusharma366 <at> gmail.com> writes:
>>
>>> Recipe from emacs -q:
>>> 1. M-x gnus
>>> 2. Select any group
>>> 3. Select a random article
>>> 4. do `W C-h' or C-h m
>>>
>>> W C-h simply does not work while C-h m works, but does not show the
>>> bound keys.
>>
>> FWIW I'm unable to reproduce this, using Emacs master. I'd be pretty
>> surprised if Gnus were able to break such low-level functionality, too.
>> Can you give us any more clues? Is this something that only started
>> happening recently?
>
> With the point in article mode, are you able to reproduce it?

(Sending this back to the bug report...)

Yes, I'm able to reproduce it, and it sent me down a really awful rabbit
hole -- gnus-art.el goes to huge lengths to make summary-mode
keybindings available in article mode. It uses this:

(substitute-key-definition
 #'undefined #'gnus-article-read-summary-keys gnus-article-mode-map)

to redirect all unbound keys to the `gnus-article-read-summary-keys'
function, which manually reads keys and dispatches to tweaked versions
of summary-mode commands.

Your immediate issue is caused by the fact that
`gnus-article-describe-bindings', which theoretically should be
responsible for telling the user about all the redirections, is only
aware of the "S" keymap prefix. It doesn't know all the ways in which an
'undefined binding might get translated into a valid summary-mode
command, and can't show you those.

To be honest, I don't think I'm going to be able to fix this. If we keep
the current implementation, `gnus-article-describe-bindings' would have
to be made aware of the additional redirections, and I wouldn't even
know where to start.

It could be that Elisp has better tools for this situation by now (the
original architecture was in place before 1997), but I'm not sure what
those tools are. Perhaps someone will chime in with a helpful
suggestion...

Eric




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

Previous Next


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