Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XMENU(1)		     General Commands Manual			XMENU(1)

NAME
     xmenu - menu utility for X

SYNOPSIS
     xmenu [-irw] [-p position] [-x|-X [modifier-]button] [title]

DESCRIPTION
     xmenu  is	a  menu  for  X, it reads a list of newline-separated items from
     stdin, shows a menu for the user to select one of the  items,  and  outputs
     the item selected to stdout.

     The options are as follows:

     -i     Disable  icons.   This  makes  xmenu  loading  faster when not using
	    icons.

     -p position
	    Set the position to spawn xmenu.  Without this option, xmenu  spawns
	    next to the cursor.  position is a string of the form INTxINT[:MONI-
	    TOR],  where  the  first INT is the x position and the second INT is
	    the y position.  The monitor  part	between  brackets  is  optional.
	    MONITOR can be a number from 0 to the number of monitors minus 1; or
	    it	can be a string like current or cursor.  If present, the monitor
	    specifies that the position is relative to the upper left corner  of
	    that  monitor.   If  monitor is current or cursor, the monitor to be
	    used is that where the cursor is in.   For	example,  -p  0x0:cursor
	    specifies  that  xmenu must spawn at the position 0x0 of the monitor
	    where the cursor is in.  And -p 100x500:0 specifies that xmenu  must
	    spawn at the position 100x500 of the monitor 0.

     -r     If this option is set, the right mouse button is disabled; so press-
	    ing it will not trigger any menu item.

     -w     Asks the window manager to draw a border around the menus.	This op-
	    tion may be buggy in some window managers, specially tiled ones that
	    do not respect window hints.

     -x [mod-]button
	    This  option  requires an argument of the form mod-button or button;
	    where mod is Mod1 to Mod5, or Alt (equivalent  to  Mod1),  or  Super
	    (equivalent  to  Mod4);  and button is the number of a mouse button.
	    When this option is used, xmenu listens to	button	presses  on  the
	    root  window,  and	shows  the  pie  menu  when  the given button is
	    pressed, together with the given modifier, on the root window.   For
	    example, invoking xmenu with the option -x Super-3 makes a menu open
	    when  clicking  with  the  third mouse button on the root window, or
	    when clicking with the third mouse button together	with  the  Super
	    (Mod4) modifier on any window.  This option makes xmenu run continu-
	    ously; so it should be used when xmenu is invoked in background on a
	    X startup file (like ~/.xinitrc).

     -X [mod-]button
	    Just  like	-x,  but also pass the click to the root window (for the
	    window manager to use it, for example).  This option is incompatible
	    with -x.

     Each item read from stdin has the following format:

	    ITEM := [TABS] [[IMAGE TABS] LABEL [TABS OUTPUT]] NEWLINE

     That means that each item is composed by tabs, followed by an optional  im-
     age  specification,  followed by tabs followed by a label, followed by more
     tabs, followed by an output, and ended by a newline.   Brackets  group  op-
     tional elements.

	    The  initial tabs indicate the menu hierarchy: items indented with a
	    tab is shown in a submenu of the preceding item  not  indented.   An
	    item without initial tabs is a top-level item.

	    The  image	is  a  string  of the form "IMG:/path/to/image.png".  It
	    specifies the path to a image file to be shown as icon at  the  left
	    of	the  entry.  If the path does not begin with "/", "./" or "../",
	    the file is searched on the paths specified in the ICONPATH environ-
	    ment variable.

	    The label is the string that will be shown as a item  in  the  menu.
	    An	item  without  label is considered a separator and is drawn as a
	    thin line in the menu separating the item above from the item below.

	    The output is the string that will be  output  after  selecting  the
	    item.   If an item does not have an output, its label is used as its
	    output.

	    The newline terminates the item specification.

     If the argument title is given, the title of the menu window is set to it.

USAGE
     xmenu is controlled by the mouse, but can also be controlled  by  the  key-
     board.   Items  can be selected using the arrow keys, Tab (with and without
     Shift), Home, End, Enter and Esc, and 1-9 keys.  Items can also be selected
     by typing the first several characters in it.

     Home   Select the first item in the menu.

     End    Select the last item in the menu.

     Down   Cycle through the items in the regular direction.

     Tab    Cycle  through  the  items	in  the  regular  direction.   When  the
	    type-to-select  feature  is active, cycle through matching items in-
	    stead.

     Up     Cycle through the items in the reverse direction.

     Shift-Tab
	    Cycle  through  the  items	in  the  reverse  direction.   When  the
	    type-to-select  feature  is active, cycle through matching items in-
	    stead.

     Right, Enter
	    Select the highlighted item.

     Left   Go to the menu above.

     Esc    Go to the menu above or exit xmenu.

     xmenu features the type-to-select selecting style, where  typing  a  string
     will select the first item matching it.

     Additional key bindings can be set at compile time by changing the config.h
     file.

RESOURCES
     xmenu understands the following X resources.

     xmenu.font
	    The font in which the labels should be drawn.  Multiple fonts can be
	    added as fallback fonts; they must be separated by a comma.

     xmenu.background
	    The background color of non-selected items in the menu.

     xmenu.foreground
	    The color of the label text of non-selected items in the menu.

     xmenu.selbackground
	    The background color of selected items in the menu.

     xmenu.selforeground
	    The color of the label text of selected items in the menu.

     xmenu.border
	    The color of the border around the menu.

     xmenu.separator
	    The color of the separator between items in the menu.

     xmenu.gap
	    The gap, in pixels, between the menus.

     xmenu.width
	    The minimum width, in pixels, of the items in the menu.

     xmenu.height
	    The size in pixels of the height of a single menu item.

     xmenu.borderWidth
	    The size in pixels of the border around the menu.

     xmenu.separatorWidth
	    The size in pixels of the item separator.

     xmenu.alignment
	    If set to "left", "center", or "right", text is aligned to the left,
	    center,  or  right	of  the menu, respectively.  By default, text is
	    aligned to the left.

     xmenu.maxItems
	    Maximum number of items to be displayed in a menu.	If more  a  menu
	    has more than this number of items, they will be scrolled with arrow
	    buttons.

ENVIRONMENT
     The following environment variables affect the execution of xmenu.

     DISPLAY
	    The display to start xmenu on.

     ICONPATH
	    A  colon-separated	list of directories used to search for the loca-
	    tion of image files.

EXAMPLES
     The following script illustrates the use of xmenu.   The  output  is  redi-
     rected to sh(1), creating a command to be run by the shell.

	    #!/bin/sh

	    xmenu <<EOF | sh &
	    Applications
		 IMG:./web.png	Web Browser    firefox
		 IMG:./gimp.png Image editor   gimp
	    Terminal (xterm)		       xterm
	    Terminal (urxvt)		       urxvt
	    Terminal (st)		       st

	    Shutdown			       poweroff
	    Reboot			       reboot
	    EOF

     For  example, by selecting "Applications", a new menu will appear.  Select-
     ing "Web Browser" in the new menu opens firefox.

SEE ALSO
     dmenu(1), 9menu(1), thingmenu(1)

									XMENU(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=xmenu&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help