Next: Alias Menu Items, Previous: Extended Menu Items, Up: Defining Menus
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.
In the simplest case, separator-type consists of only dashes.
That specifies the default kind of separator. (For compatibility,
""
and -
also count as separators.)
Certain other values of separator-type specify a different style of separator. Here is a table of them:
"--no-line"
"--space"
"--single-line"
"--double-line"
"--single-dashed-line"
"--double-dashed-line"
"--shadow-etched-in"
"--shadow-etched-out"
"--shadow-etched-in-dash"
"--shadow-etched-out-dash"
"--shadow-double-etched-in"
"--shadow-double-etched-out"
"--shadow-double-etched-in-dash"
"--shadow-double-etched-out-dash"
You can also give these names in another style, adding a colon after
the double-dash and replacing each single dash with capitalization of
the following word. Thus, "--:singleLine"
, is equivalent to
"--single-line"
.
You can use a longer form to specify keywords such as :enable
and :visible
for a menu separator:
(menu-item
separator-type nil .
item-property-list)
For example:
(menu-item "--" nil :visible (boundp 'foo))
Some systems and display toolkits don't really handle all of these separator types. If you use a type that isn't supported, the menu displays a similar kind of separator that is supported.