GNU bug report logs - #77118
31.0.50; help-key-binding face in help buffer

Previous Next

Package: emacs;

Reported by: Arash Esbati <arash <at> gnu.org>

Date: Wed, 19 Mar 2025 13:06:02 UTC

Severity: normal

Found in version 31.0.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


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

From: Eli Zaretskii <eliz <at> gnu.org>
To: Arash Esbati <arash <at> gnu.org>,
 Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: 77118 <at> debbugs.gnu.org
Subject: Re: bug#77118: 31.0.50; help-key-binding face in help buffer
Date: Wed, 19 Mar 2025 16:39:32 +0200
> From: Arash Esbati <arash <at> gnu.org>
> Date: Wed, 19 Mar 2025 14:05:21 +0100
> 
> when I eval the following code:
> 
> --8<---------------cut here---------------start------------->8---
> (let ((help-form (substitute-command-keys "\
> Select with a key:
> \\`h'   do this,
> \\`k'   do that,
> \\`RET' do nothing.")))
>   (read-char-choice (substitute-command-keys
>                      (format "\
> This (\\`h'), That (\\`k'), Nothing (\\`RET'), Help (\\`%s'): "
>                              (key-description (vector help-char))))
>                     '(?h ?k ?\r)))
> --8<---------------cut here---------------end--------------->8---
> 
> and do 'C-h', h, k and RET don't receive the help-key-binding face in
> the help buffer which pops up.  What I see with 'emacs -Q' is attached.
> Note the difference in the minibuffer.
> 
> The reason seems to be in the implementation of `help-form-show' using
> `princ' which strips properties.  If this is intentional, it doesn't
> match definitions of `help-form' in Emacs tree.  Take for example
> dired-aux.el which pushes the string for `help-form' also through
> `substitute-command-keys'[1,2,3].
> 
> In case this report is confirmed, a possible solution is provided
> here[4].

Stefan, any comments or reasons why we use princ there?




This bug report was last modified 65 days ago.

Previous Next


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