* bug#74740: 31.0.50; tty menus not displaying separators @ 2024-12-08 17:34 Gerd Möllmann 2024-12-08 18:33 ` Eli Zaretskii 0 siblings, 1 reply; 7+ messages in thread From: Gerd Möllmann @ 2024-12-08 17:34 UTC (permalink / raw) To: 74740 To see this, emacs -nw -q and open a menu from the menubar. Simple separators there are displayed as "--". More generally, all separator types are displayed as they appear in the menu item definition, '--double-line' as "--double-line" and so on. In GNU Emacs 31.0.50 (build 1, aarch64-apple-darwin24.1.0) of 2024-12-08 built on pro2 Repository revision: 9a0e26b88616946d2512680859166caa2675b30a Repository branch: master System Description: macOS 15.1.1 ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-08 17:34 bug#74740: 31.0.50; tty menus not displaying separators Gerd Möllmann @ 2024-12-08 18:33 ` Eli Zaretskii 2024-12-08 18:46 ` Gerd Möllmann 0 siblings, 1 reply; 7+ messages in thread From: Eli Zaretskii @ 2024-12-08 18:33 UTC (permalink / raw) To: Gerd Möllmann; +Cc: 74740 > From: Gerd Möllmann <gerd.moellmann@gmail.com> > Date: Sun, 08 Dec 2024 18:34:33 +0100 > > To see this, emacs -nw -q and open a menu from the menubar. Simple > separators there are displayed as "--". What did you expect instead? I think this always worked like that on TTY frames. > More generally, all separator types are displayed as they appear in the > menu item definition, '--double-line' as "--double-line" and so on. What do you mean by that? where do we have such separators, and how do you display the menus which show them? I don't think I see them in the default menu bar. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-08 18:33 ` Eli Zaretskii @ 2024-12-08 18:46 ` Gerd Möllmann 2024-12-08 19:04 ` Eli Zaretskii 0 siblings, 1 reply; 7+ messages in thread From: Gerd Möllmann @ 2024-12-08 18:46 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 74740 Eli Zaretskii <eliz@gnu.org> writes: >> From: Gerd Möllmann <gerd.moellmann@gmail.com> >> Date: Sun, 08 Dec 2024 18:34:33 +0100 >> >> To see this, emacs -nw -q and open a menu from the menubar. Simple >> separators there are displayed as "--". > > What did you expect instead? I think this always worked like that on > TTY frames. > >> More generally, all separator types are displayed as they appear in the >> menu item definition, '--double-line' as "--double-line" and so on. I expected a horizontal line for "--". > What do you mean by that? where do we have such separators, and how do > you display the menus which show them? I don't think I see them in > the default menu bar. Concerning the separator types, Elisp Info says 23.18.1.3 Menu Separators ......................... A menu separator is a kind of menu item that doesn't display any text--instead, it divides the menu into subparts with a horizontal line. A separator looks like this in the menu keymap: (menu-item SEPARATOR-TYPE) where SEPARATOR-TYPE is a string starting with two or more dashes. followed by a list of separator types, among them the --double-line I mentioned. One can get these from 3rd-party packages. Minion is an example, where --double-line appears in a popup menu on the mode line. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-08 18:46 ` Gerd Möllmann @ 2024-12-08 19:04 ` Eli Zaretskii 2024-12-09 4:29 ` Gerd Möllmann 0 siblings, 1 reply; 7+ messages in thread From: Eli Zaretskii @ 2024-12-08 19:04 UTC (permalink / raw) To: Gerd Möllmann; +Cc: 74740 > From: Gerd Möllmann <gerd.moellmann@gmail.com> > Cc: 74740@debbugs.gnu.org > Date: Sun, 08 Dec 2024 19:46:35 +0100 > > Eli Zaretskii <eliz@gnu.org> writes: > > >> From: Gerd Möllmann <gerd.moellmann@gmail.com> > >> Date: Sun, 08 Dec 2024 18:34:33 +0100 > >> > >> To see this, emacs -nw -q and open a menu from the menubar. Simple > >> separators there are displayed as "--". > > > > What did you expect instead? I think this always worked like that on > > TTY frames. > > > >> More generally, all separator types are displayed as they appear in the > >> menu item definition, '--double-line' as "--double-line" and so on. > > I expected a horizontal line for "--". > > > What do you mean by that? where do we have such separators, and how do > > you display the menus which show them? I don't think I see them in > > the default menu bar. > > Concerning the separator types, Elisp Info says > > 23.18.1.3 Menu Separators > ......................... > > A menu separator is a kind of menu item that doesn't display any > text--instead, it divides the menu into subparts with a horizontal line. > A separator looks like this in the menu keymap: > > (menu-item SEPARATOR-TYPE) > > where SEPARATOR-TYPE is a string starting with two or more dashes. > > followed by a list of separator types, among them the --double-line I > mentioned. > > One can get these from 3rd-party packages. Minion is an example, where > --double-line appears in a popup menu on the mode line. This was never supported in TTY menus (I think I was completely unaware of this feature when I wrote the code). Patches to support it will be most welcome. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-08 19:04 ` Eli Zaretskii @ 2024-12-09 4:29 ` Gerd Möllmann 2024-12-09 13:54 ` Eli Zaretskii 0 siblings, 1 reply; 7+ messages in thread From: Gerd Möllmann @ 2024-12-09 4:29 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 74740 [-- Attachment #1: Type: text/plain, Size: 1894 bytes --] Eli Zaretskii <eliz@gnu.org> writes: >> From: Gerd Möllmann <gerd.moellmann@gmail.com> >> Cc: 74740@debbugs.gnu.org >> Date: Sun, 08 Dec 2024 19:46:35 +0100 >> >> Eli Zaretskii <eliz@gnu.org> writes: >> >> >> From: Gerd Möllmann <gerd.moellmann@gmail.com> >> >> Date: Sun, 08 Dec 2024 18:34:33 +0100 >> >> >> >> To see this, emacs -nw -q and open a menu from the menubar. Simple >> >> separators there are displayed as "--". >> > >> > What did you expect instead? I think this always worked like that on >> > TTY frames. >> > >> >> More generally, all separator types are displayed as they appear in the >> >> menu item definition, '--double-line' as "--double-line" and so on. >> >> I expected a horizontal line for "--". >> >> > What do you mean by that? where do we have such separators, and how do >> > you display the menus which show them? I don't think I see them in >> > the default menu bar. >> >> Concerning the separator types, Elisp Info says >> >> 23.18.1.3 Menu Separators >> ......................... >> >> A menu separator is a kind of menu item that doesn't display any >> text--instead, it divides the menu into subparts with a horizontal line. >> A separator looks like this in the menu keymap: >> >> (menu-item SEPARATOR-TYPE) >> >> where SEPARATOR-TYPE is a string starting with two or more dashes. >> >> followed by a list of separator types, among them the --double-line I >> mentioned. >> >> One can get these from 3rd-party packages. Minion is an example, where >> --double-line appears in a popup menu on the mode line. > > This was never supported in TTY menus (I think I was completely > unaware of this feature when I wrote the code). Patches to support it > will be most welcome. The following patch displays "--" for all separator types. I'd say that's good enough, WDYT? [-- Warning: decoded text below may be mangled, UTF-8 assumed --] [-- Attachment #2: separator types --] [-- Type: text/x-patch, Size: 957 bytes --] From 09917757737d65fbb5bbcd57427a8e0528b87119 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gerd=20M=C3=B6llmann?= <gerd@gnu.org> Date: Mon, 9 Dec 2024 05:20:29 +0100 Subject: [PATCH] Support menu separator types in tty menus (bug#74740) * src/xdisp.c (display_tty_menu_item): Display "--" If a menu item's text looks like a separator. --- src/xdisp.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/xdisp.c b/src/xdisp.c index 534c0520240..abbe665a2fd 100644 --- a/src/xdisp.c +++ b/src/xdisp.c @@ -27333,6 +27333,9 @@ display_tty_menu_item (const char *item_text, int width, int face_id, display_string (" >", Qnil, Qnil, 0, 0, &it, width, 0, FRAME_COLS (f) - 1, -1); } + else if (menu_separator_name_p (item_text)) + display_string ("--", Qnil, Qnil, 0, 0, &it, + width, 0, FRAME_COLS (f) - 1, -1); else display_string (item_text, Qnil, Qnil, 0, 0, &it, width, 0, FRAME_COLS (f) - 1, -1); -- 2.47.1 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-09 4:29 ` Gerd Möllmann @ 2024-12-09 13:54 ` Eli Zaretskii 2024-12-09 14:20 ` Gerd Möllmann 0 siblings, 1 reply; 7+ messages in thread From: Eli Zaretskii @ 2024-12-09 13:54 UTC (permalink / raw) To: Gerd Möllmann; +Cc: 74740 > From: Gerd Möllmann <gerd.moellmann@gmail.com> > Cc: 74740@debbugs.gnu.org > Date: Mon, 09 Dec 2024 05:29:43 +0100 > > >> 23.18.1.3 Menu Separators > >> ......................... > >> > >> A menu separator is a kind of menu item that doesn't display any > >> text--instead, it divides the menu into subparts with a horizontal line. > >> A separator looks like this in the menu keymap: > >> > >> (menu-item SEPARATOR-TYPE) > >> > >> where SEPARATOR-TYPE is a string starting with two or more dashes. > >> > >> followed by a list of separator types, among them the --double-line I > >> mentioned. > >> > >> One can get these from 3rd-party packages. Minion is an example, where > >> --double-line appears in a popup menu on the mode line. > > > > This was never supported in TTY menus (I think I was completely > > unaware of this feature when I wrote the code). Patches to support it > > will be most welcome. > > The following patch displays "--" for all separator types. I'd say > that's good enough, WDYT? Yes, LGTM, please install. But please add a FIXME comment there mentioning the feature and inviting its implementation. ^ permalink raw reply [flat|nested] 7+ messages in thread
* bug#74740: 31.0.50; tty menus not displaying separators 2024-12-09 13:54 ` Eli Zaretskii @ 2024-12-09 14:20 ` Gerd Möllmann 0 siblings, 0 replies; 7+ messages in thread From: Gerd Möllmann @ 2024-12-09 14:20 UTC (permalink / raw) To: Eli Zaretskii; +Cc: 74740 Eli Zaretskii <eliz@gnu.org> writes: >> From: Gerd Möllmann <gerd.moellmann@gmail.com> >> Cc: 74740@debbugs.gnu.org >> Date: Mon, 09 Dec 2024 05:29:43 +0100 >> >> >> 23.18.1.3 Menu Separators >> >> ......................... >> >> >> >> A menu separator is a kind of menu item that doesn't display any >> >> text--instead, it divides the menu into subparts with a horizontal line. >> >> A separator looks like this in the menu keymap: >> >> >> >> (menu-item SEPARATOR-TYPE) >> >> >> >> where SEPARATOR-TYPE is a string starting with two or more dashes. >> >> >> >> followed by a list of separator types, among them the --double-line I >> >> mentioned. >> >> >> >> One can get these from 3rd-party packages. Minion is an example, where >> >> --double-line appears in a popup menu on the mode line. >> > >> > This was never supported in TTY menus (I think I was completely >> > unaware of this feature when I wrote the code). Patches to support it >> > will be most welcome. >> >> The following patch displays "--" for all separator types. I'd say >> that's good enough, WDYT? > > Yes, LGTM, please install. But please add a FIXME comment there > mentioning the feature and inviting its implementation. Thanks, pushed to master, and closing. ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-12-09 14:20 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-12-08 17:34 bug#74740: 31.0.50; tty menus not displaying separators Gerd Möllmann 2024-12-08 18:33 ` Eli Zaretskii 2024-12-08 18:46 ` Gerd Möllmann 2024-12-08 19:04 ` Eli Zaretskii 2024-12-09 4:29 ` Gerd Möllmann 2024-12-09 13:54 ` Eli Zaretskii 2024-12-09 14:20 ` Gerd Möllmann
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).