4mGSMENU24m(1) General Commands Manual 4mGSMENU24m(1)
1mNAME0m
gsmenu - grid menu
1mSYNOPSIS0m
gsmenu [Sindre options...]
1mDESCRIPTION0m
1mOverview0m
gsmenu is a generic grid menu for X11, originally a port of the
GridSelect contrib for XMonad. Now it is a program built on Sindre. It
displays elements as a grid of rectangular cells. gsmenu always uses
the display indicated in the DISPLAY environment variable.
1mOptions0m
No options are accepted apart from those provided by 4msindre24m(1).
1mUSAGE0m
gsmenu reads a list of newline-separated elements from standard input
and presents them in a grid. Each element has a foreground and a
background colour, as well as a name (what will be visible on the
screen) and a list of tags that are used only for filtering.
1mINPUT FORMAT0m
The standard Sindre key-value format is used. Each line takes the form
of key-value pairs, with the key being a sequence of alphanumerics,
followed by an equals sign, followed by a value in double quotes
(double-quotes can be embedded by doubling them). For example, an
element might be
name="foo" bg="red"
And a list-value can be given by simply writing more double-quoted
strings (this also showcases double quote-escaping):
name="quote ""this"" please" tags="bar" "baz" bg="red"
The following keys are defined:
1mname 22mThe string that will be displayed in the grid. The value can
also be a list, in which case each part of the list will be
printed as a line by itself (note that there will probably not
be room for more than two lines). Also, only the first line
will count as the "name" as far as selection output is
concerned.
1mfg 22mThe foreground (text) colour of the element (#RGB, #RRGGBB, and
color names are supported).
1mbg 22mThe background colour of the element (#RGB, #RRGGBB, and color
names are supported).
1mtags 22mA list of tags of the element, used when filtering.
1mvalue 22mInstead of the name, print the value of this key when the
element is selected. If a list, a newline is printed after
every element but the last.
1mINTERACTION0m
When the user moves focus to an element and presses Return, that
element is selected and is printed to standard output and gsmenu
terminates. Elements can also be selected by clicking on them with the
mouse. Additionally, the following keyboard commands are recognised:
1mAny printable character0m
Appends the character to the text in the input field. This
works as a filter: only items containing this text (possibly in
a tag) will be displayed.
1mBackspace0m
Remove the last character in the input field, or if empty, open
the topmost filter for editing.
1mLeft/Right/Up/Down (CTRL-b/CTRL-f/CTRL-p/CTRL-n)0m
Move focus in the grid.
1mCTRL-a 22mSet focus to the leftmost element in the row.
1mCTRL-e 22mSet focus to the rightmost element in the row.
1mCTRL-s 22mFocus on the next element following a spiral path from the
center.
1mCTRL-r 22mFocus on the previous element following a spiral path from the
center.
1mCTRL-w 22mRemove the topmost filter, if any.
1mEscape, CTRL-c, CTRL-g0m
Cancel selection and exit gsmenu.
1mEXIT STATUS0m
gsmenu returns a 1m0 22mexit status on success, 1m1 22mif there was an internal
problem, and 1m2 22mif the user cancelled.
1mSEE ALSO0m
4msindre24m(1), 4mdmenu24m(1), 4mxmonad24m(1)
gsmenu-4.0 4mGSMENU24m(1)