GNU bug report logs -
#52286
28.0.90; [PATCH] Be consistent in naming of separators in context menu
Previous Next
Reported by: Jim Porter <jporterbugs <at> gmail.com>
Date: Sat, 4 Dec 2021 21:58:02 UTC
Severity: normal
Tags: patch, wontfix
Found in version 28.0.90
Fixed in version 29.0.50
Done: Juri Linkov <juri <at> linkov.net>
Bug is archived. No further changes may be made.
Full log
Message #29 received at 52286 <at> debbugs.gnu.org (full text, mbox):
[Message part 1 (text/plain, inline)]
On 12/6/2021 4:55 AM, Eli Zaretskii wrote:
> I think the most natural place is where we describe how to construct
> menus.
Thanks.
>> We can detect whether an item is a separator pretty easily without this
>> change. However, context menu functions use specific separators to
>> determine where exactly it should put new menu items. For example,
>> `elisp-context-menu' adds menu items after `middle-separator':
>>
>> (define-key-after menu [elisp-separator] menu-bar-separator
>> 'middle-separator)
>>
>> (Later in the function, it adds the actual menu items after the
>> newly-added `elisp-separator'.)
>
> If this is a private convention of elisp-mode, we don't have to codify
> it.
It's not just for `elisp-mode'; any mode (or other third-party code) may
want to insert context menu items in a certain spot. `middle-separator'
follows the naming convention I recommend, but a hypothetical mode might
want to insert a new item just after the separator for the Undo section.
However, that's currently named `separator-undo' on master, so it can be
confusing to remember the difference in naming between these two cases:
(define-key-after menu [my-separator] menu-bar-separator
'middle-separator)
(define-key-after menu [my-separator] menu-bar-separator
'separator-undo)
> So maybe instead of conventions we should have recommendations, with
> explanation why following that could be useful in some situation.
> Then let Lisp programmers decide what they want.
Ok, I've tried to provide a brief explanation of the recommendation and
the reasoning for it without *over*-explaining it. I also added a small
explanation about how to use `menu-bar-separator', since I didn't see
documentation on that in the manual, and it helped segue into an
explanation about the naming recommendation.
[0001-Rename-context-menu-separators-to-FOO-separator-for-.patch (text/plain, attachment)]
This bug report was last modified 3 years and 182 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.