Standards, Environments and Macros

## NAME

     icewm-programs - icewm programs configuration file

## SYNOPSIS

     $ICEWM_PRIVCFG/programs
     $XDG_CONFIG_HOME/icewm/programs
     $HOME/.icewm/programs
     /etc/icewm/programs
     /usr/local/share/icewm/programs

## DESCRIPTION

The programs file is an automatically generated menu configuration file of installed programs. This file should be automatically generated by xdg_menu, wmconfig (Redhat), menu (Debian), or icewm-menu-fdo, perhaps as part of the login or X startup sequence.

## 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 (`"`), although the title may always be surrounded by double quotes if preferred.

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 programs file that ships with icewm(1):

     # This file is intended to be customized by the distributions.
     # (they should place it in /etc/X11/icewm)
     #
     # mostly obsolete, fixme
     menu Editors folder {
         prog fte fte fte
         prog vim vim gvim
         prog xemacs xemacs xemacs
         prog emacs emacs emacs
         prog NEdit nedit nedit
         prog xedit xedit xedit
         prog Lyx emacs lyx
     }
     menu "WWW" folder {
         prog Netscape netscape netscape
         prog Mozilla mozilla mozilla
         prog Galeon galeon galeon
         prog Arena arena arena
         prog Lynx lynx xterm -e lynx
         prog Links lynx xterm -e links
     }
     menu "Document Viewers" folder {
         prog "Acrobat Reader" pdf acroread
         prog "DVI Previewer" xdvi xdvi
         prog "Ghostview" ghostview gv
     }
     menu Graphics folder {
         prog Gimp gimp gimp
         prog XV xv xv
         prog XPaint xpaint xpaint
         prog XFig xfig xfig
     }
     menu Games folder {
         prog "Koules for X" koules xkoules -f
         prog Xboing xboing xboing
         prog Xboard xboard xboard
         prog XGalaga xgalaga xgal
         prog XDemineur xdemineur xdemineur
         prog "Tux Racer" tuxracer tuxracer
     }
     menu System folder {
         prog "Control Panel" redhat control-panel
     }
     menu Utilities folder {
         prog XPlayCD xplaycd xplaycd
         prog XMixer xmixer xmixer
         prog Clock xclock xclock
         prog Magnify xmag xmag
         prog Calculator xcalc xcalc
         prog Colormap xcolormap xcmap
         prog Clipboard xclipboard xclipboard
         prog xkill bomb xkill
         prog xload xload xload
         prog xosview xosview xosview
         separator
         prog "Screen Saver" xlock xlock -nolock
         prog "Screen Lock" xlock xlock
     }
     menu "Window Managers" folder {
         restart icewm - icewm
         restart metacity - metacity
         restart wmaker - wmaker
         restart fluxbox - fluxbox
         restart blackbox - blackbox
         restart enlightenment - enlightenment
         restart fvwm2 - fvwm2
         restart fvwm - fvwm
         restart sawfish - sawfish
         restart sawfish2 - sawfish2
     }

## FILES

Locations for the programs file are as follows:

     $ICEWM_PRIVCFG/programs
     $XDG_CONFIG_HOME/icewm/programs
     $HOME/.icewm/programs
     /etc/icewm/programs
     /usr/local/share/icewm/programs

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

## SEE ALSO

icewm(1), icewm-menu(5), 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