Subject: Re: bug#64799: [PATCH] Add 'project-prompt-key' face

From: Philip Kaludercic <[email-masked]>
Date: Fri, 28 Jul 2023 06:35:24 +0000

Dmitry Gutov <[email-masked]> writes:

> On 26/07/2023 07:50, Protesilaos Stavrou wrote:
>> For my use, and Emacs 28+, I want this:
>>      (format "%s %s"
>>                 (propertize (key-description key) 'face 'project-prompt-key)
>>                 label)
>> The reason I mentioned the possibility of a user option is because
>> without the square brackets the bold face will not have the same effect
>> as the current design.  The square brackets help add structure and make
>> it easier to identify the keys.  The use of 'bold' without the square
>> brackets may make it more difficult for users to spot the keys.
>
> The change in format seems to go hand-in-hand with the change in face,
> though, because help-key-binding has a box already.
>
> Does this look good to everybody?

Looks good to me too, but I haven't tried it out.

> diff --git a/lisp/progmodes/project.el b/lisp/progmodes/project.el
> index d482cc24d70..3611757fb82 100644
> --- a/lisp/progmodes/project.el
> +++ b/lisp/progmodes/project.el
> @@ -1781,9 +1781,13 @@ project--keymap-prompt
>       (let ((key (if key
>                      (vector key)
>                    (where-is-internal cmd (list project-prefix-map) t))))
> -       (format "[%s] %s"
> -               (propertize (key-description key) 'face 'bold)
> -               label)))
> +       (if (facep 'help-key-binding)
> +           (format "%s %s"
> +                   (propertize (key-description key) 'face
> 'help-key-binding)
> +                   label)
> +         (format "[%s] %s"
> +                 (propertize (key-description key) 'face 'bold)
> +                 label))))
>     project-switch-commands
>     "  "))