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 the start menu.

A menu that gives access to applications; usually customized by the user. The icewm-menu-fdo(1) program generates a default menu that contains most of the systems desktop applications. Similar programs are xdg_menu(1), mmaker(1), xde-menu(1) and xdgmenumaker(1).

## FORMAT

The file contains lines with the following 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 "[name][.class]" program options

  Specifies a program to execute when the menu item is selected; however, if a window of the specified name and 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, which 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 that 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.

"[name][.class]"

  name is the resource name of a window launched by program and class is the resource class of the window. Only one of name or class need be specified. This is used to determine whether the program is already running and is used 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 are 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 /usr/pkg/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