Subject: Re: bug#68947: 30.0.50; Gnus article mode keybindings

From: Eric Abrahamsen <[email-masked]>
Date: Sat, 17 Feb 2024 10:13:02 -0800

Eric Abrahamsen <[email-masked]> writes:

> On 02/10/24 20:15 PM, Eli Zaretskii wrote:
>>> Cc: [email-masked]
>>> From: Eric Abrahamsen <[email-masked]>
>>> Date: Sat, 10 Feb 2024 10:09:14 -0800
>>> 
>>> 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...
>>
>> Strange as it may sound, I see no grave problem here: C-h is not
>> guaranteed to work after any arbitrary prefix, anyway.  So if that is
>> too hard to fix, we could just punt and leave it unsolved.
>
> I'm inclined to say it's too hard to fix! The only cleaner solution I
> can think of is to actually define article-mode versions of all the
> summary-mode commands we'd want to call, which would also provide a
> place to do the necessary article-specific adjustments. That's a lot of
> very tightly-coupled code, though.
>
>> What about "C-h b" -- does that work in the situation described by the
>> recipe?
>
> No, that doesn't really work. The gnus-article-mode bindings are listed
> under a "fundamental-mode Major Mode Bindings:" heading (??). That
> includes gnus-article-mode's own keybindings, and the summary-mode
> bindings that have been explicitly attached at the "S" prefix, but
> nothing else.

I don't know, I don't see a good solution to this without a massive
rewrite, which I don't have the stomach for right now. Should we leave
the bug open, since it's a real problem?