Standards, Environments and Macros

## NAME

    icewm-menu - icewm menu configuration file

## SYNOPSIS

    $ICEWM_PRIVCFG/menu
    $XDG_CONFIG_HOME/icewm/menu
    $HOME/.icewm/menu
    /etc/icewm/menu
    /usr/share/icewm/menu

## DESCRIPTION

The menu file is responsible for configuring most of the icewm(1) root menu and start menu.

A menu of applications; usually customized by the user. icewm provides the icewm-menu-fdo(1) program to generate a default menu. Similar programs are xdg_menu(1), mmaker(1) (MenuMaker), xde-menu(1), xdgmenumaker(1).

## FORMAT

The format of the file contains one of the following line syntax:

prog ["]title["] icon program options

  Specifies a program to execute when the menu item is selected.

restart ["]title["] icon program options

  Specifies a program to replace the window manager when the menu item is selected. This is for launching other window managers from within icewm(1).

runonce ["]title["] icon "[res_name][.res_class]" program options

  Specifies a program to execute when the menu item is selected; however, if a window of the specified res_name and res_class is present, the program will not be run again.

menu ["]title["] icon { # contained items }

  Specifies a sub-menu. The lines that appear between the braces can be any menu item described here.

menufile ["]title["] icon ["]filename["]

  Specifies a file from which to collect sub-menu items (lines) and place them at this point in the menu.

menuprog ["]title["] icon program options

  Specifies a program that will print sub-menu items on standard output and will be collected and placed in the sub-menu at this point.

menuprogreload ["]title["] icon timeout program options

  Similar to menuprog, but after at least timeout seconds the menu is regenerated.

include ["]filename["]

  Read additional entries from the file filename

includeprog program options

  Read additional entries from the output of program options.

separator

  A separator for menu items.

Where

prog, restart, runonce, menu, menufile, menuprog, menuprogreload, include, includeprog, separator

  These are literal string keywords.

["]title["]

  This is the title string associated with the menu item which is displayed in the menu. When the title contains spaces, the title must be surrounded by double quotes (``).

icon

  Is the name of the icon file (with or without extension) or the full path to an icon file.

"[res_name][.res_class]"

  res_name is the resource name of a window launched by program and res_class is the resource class of the window. Only one of res_name or res_class need be specified. This is used to identify whether the program is already running and is for use with the runonce keyword.

program options

  program is the name of the executable or full path to the executable file that will be run in response to selecting the menu item. When used with the menuprog keyword, the program must print on standard output the contents of the menu and is used for dynamic menus.

  options is the options and arguments passed to the program verbatim.

filename

  filename is the name of the file relative to one of the icewm(1) configuration directories, or the full path to a file. The file is used with the menufile keyword and specifies the file from which to read further menu items.

## EXAMPLES

Following is the example menu file that ships with icewm(1):

    # This is an example for IceWM's menu definition file.
    #
    # Place your variants in /etc/icewm or in $HOME/.icewm
    # since modifications to this file will be discarded when you
    # (re)install icewm.
    #
    prog xterm xterm xterm
    prog rxvt xterm rxvt -bg black -cr green -fg white -C -fn 9x15 -sl 500
    prog fte fte fte
    prog NEdit nedit nedit
    prog Mozilla mozilla mozilla
    prog XChat xchat xchat
    prog Gimp gimp gimp
    separator
    menuprog "Desktop Apps" folder icewm-menu-fdo
    menufile Programs folder programs
    menufile Tool_bar folder toolbar

## FILES

Locations for the menu file are as follows:

    $ICEWM_PRIVCFG/menu
    $XDG_CONFIG_HOME/icewm/menu
    $HOME/.icewm/menu
    /etc/icewm/menu
    /usr/share/icewm/menu

The locations are searched in the order listed; the first file found is read and the remainder ignored.

## SEE ALSO

icewm(1), icewm-menu-fdo(1).

## AUTHOR

Brian Bidulock mailto:bidulock@openss7.org.

## LICENSE

IceWM is licensed under the GNU Library General Public License. See the COPYING file in the distribution.

Standards, Environments and Macros