NAME
ratmenu - create a menu to run commands
SYNOPSIS
ratmenu [ -display displayname ] [ -font fname ] [ -fg foreground-color
] [ -bg background-color ] [ -io item-offset ] [ -label name ] [ -shell
prog ] [ -align {left|center|right} ] [ -style {snazzy|dreary} ] [
-persist ] [ -version ] [ menuitem command ] ...
DESCRIPTION
ratmenu 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.
ratmenu does not recognize any usage of the rodent. It is entirely
keystroke operated.
Menu items must be followed by a command. The syntax is based on that
of the dialog program.
ratmenu accepts the following command line options.
-display displayname
Use the X display displayname, instead of the default
display.
-font fname
(X Resource: font) Use the font fname, instead of the
default font.
-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 ratmenu, typically, ratmenu.
-fg foreground-color
(X Resource: fgcolor) Set the foreground color to
foreground-color. By default, the foreground color is
black.
-bg background-color
(X Resource: bgcolor) Set the background color to
background-color. By default, the background color is
white.
-io item-offset
Set the first selected item to item-offset. By default,
the first item is the top-most one, or item-offset 1.
The next item down would be at item-offset 2.
-style {snazzy|dreary}
(X Resource: style) The default style is snazzy, where
the highlight bar, which shows the currently selected
item, remains stationary while all the menu items are
rotated up or down when the cursor keys are moved. In
dreary mode, the highlight bar moves up and down the menu
as it does on all conventional keyboard controlled menus.
-align {left|center|right}
(X Resource: align) Align the text of the menu entries to
the left, right, or center. Defaults to left. This is
different from 9menu, which defaults to center.
-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, ratmenu will silently fall back
to using /bin/sh.
-back prevmenu
prevmenu is a command or shell script to run when the
back key is pressed, usually a script that has ratmenu
showing the previous menu. Used to create nested menus,
it gives the user a way to back out and return to the
previous menu. Note that you can use this option for
other things too. The command specified by the -back
option is executed when the user hits one of the "back"
keys.
-persist
(X Resource: persist) Ordinarily, ratmenu exits if a new
window pops up on top of it, or if you switch to another
window. This option tells ratmenu to hang around, like a
regular window.
-version
This option prints the version of ratmenu on the standard
output, and then exits with an exit value of zero.
KEYSTROKES
The Up keystrokes move the selection to the next item up. The Down
keystrokes move the selection to the next item down. When the
selection reaches the top or bottom, it scrolls around to the other
side on pressing of the appropriate keystroke. The Select keystrokes
execute the command corresponding to the currently selected menu item,
and exit ratmenu. The Exit keystrokes quit ratmenu without doing
anything.
Up ’k’, Up_arrow, BackSpace, ’-’, C-p
Down ’j’, Down_arrow, Space, Tab, ’+’, C-n, C-i
Select ’l’, Right_arrow, Return, C-f, C-m, C-j
Back ’h’, Left_arrow, C-b
Exit ’q’, Escape, C-g
CONFIGURATION USING X RESOURCES
You can configure some items using xrdb to load appropriate X
resources. There is an example configuration in the file
/usr/share/doc/ratmenu/Xresources.ratmenu which shows all possible
configuration items. Give it a look; it is fairly easy to figure out.
EXAMPLES
ratmenu -label "Remotes xterm" acme "rsh acme xterm" herman "rsh herman 9term" &
ratmenu -label ’X progs’ ghostview ghostview xdvi xdvi xeyes xeyes xneko xneko &
ratmenu -back ~/bin/mypreviousmenu "X Eyes" xeyes &
SEE ALSO
ratpoison(1), ratpoisonrc(5), dialog(1) xrdb(1)
Ratpoison Desktop Users 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. Jonathan Walther modified this code to play nicely with
the ratpoison window manager by removing handling of mouse events and
iconification. Zrajm C Akfohg made many improvements in his ratmen
fork, including X resource handling, some of which were folded back in.