9MENU(1)

NAME
9menu - create a menu to run commands

SYNOPSIS
9menu [ -display displayname ] [ -font fname ] [ -geometry geom ] [ -label name ] [ -fg foreground-color ] [ -bg background-color ] [ -shell prog ] [ -popup ] [ -popdown ] [ -iconic ] [ -teleport ] [ -warp ] [ -version ] menuitem[:command] ...

DESCRIPTION
9menu is a simple program that accepts a list of menu item and command pairs on the command line. It creates a window that consists of nothing but a menu. When a particular item is selected, the corresponding command is executed. Either Button1 or Button3 may be used to select an item.

Menu items and commands are separated by a colon. The colon and command are optional. If they are missing, then the menu item is assumed to be a command that can be executed directly.

A menu item consisting of the word exit will cause 9menu to exit. Otherwise, the menu should be deleted from the window manager. The exit menu item can be anywhere in the list, although by convention it is last. If a command is supplied along with the exit item, that command will be executed before 9menu exits.

9menu accepts the following command line options.

    -display displayname
        Use the X display displayname, instead of the default display.

    -font fname
        Use the font fname, instead of one of the default fonts built into 9wm.

    -geometry geom
        Use geom (a geometry in standard X format) as the geometry of the menu. This is most useful for specifying the initial location of the menu. 9menu will override the size part of the geometry specification. The window will always be just large enough to hold the menu.

    -label name
        Change both the window and icon labels of the window to name. The default label is the last component of the path used to run 9menu, typically, 9menu.

    -fg foreground-color
        Set the foreground color to foreground-color. By default, the foreground color is black.

    -bg background-color
        Set the background color to background-color. By default, the background color is white.

    -shell prog
        Use prog as the shell to run commands, instead of /bin/sh. A popular alternative shell is rc(1). If the shell cannot be executed, 9menu will silently fall back to using /bin/sh.

    -popup
        Act like a pop-up menu. Once a menu item is selected, 9menu will exit. This option overrides -popdown.

    -popdown
        Once an item is selected, the menu window will automatically iconify itself.

    -iconic
        Start up in the iconified state.

    -teleport
        Move the menu to where the mouse is when the menu is uniconified. This option is particularly useful when combined with -popdown.

    -warp
        Warp the mouse to the menu when the menu is uniconified. After the selection is made, restore the mouse to where it was. This option is particularly useful when combined with -popdown.

    -version
        This option prints the version of 9menu on the standard output, and then exits with an exit value of zero.

EXAMPLES
9menu -label Remotes xterm 'acme:rsh acme xterm' 'herman:rsh herman 9term' &

9menu -label 'X progs' ghostview xdvi xeyes xneko exit &

SEE ALSO
sam(1), 9term(1), 9wm(1), rc(1), es(1).

The Plan 9 Programmer's Manual.

AUTHORS
The initial idea for this program was by Arnold Robbins, after having worked with John Mackin's GWM Blit emulation. Matty Farrow wrote a version using libXg, from which some ideas were borrowed. This code was written by David Hogan and Arnold Robbins. Rich Salz motivated the -shell option. Christopher Platt motivated the -teleport option. John O'Donnell supplied the basic code for the -fg and -bg options.