1
.\" Title: fluxbox-menu
2
.\" Author: [see the "AUTHORS" section]
3
.\" Generator: DocBook XSL Stylesheets v1.74.0 <http://docbook.sf.net/>
5
.\" Manual: Fluxbox Manual
6
.\" Source: fluxbox-menu.txt 1.1.2
9
.TH "FLUXBOX\-MENU" "5" "02/19/2009" "fluxbox\-menu\&.txt 1\&.1\&.2" "Fluxbox Manual"
10
.\" -----------------------------------------------------------------
11
.\" * (re)Define some macros
12
.\" -----------------------------------------------------------------
13
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
14
.\" toupper - uppercase a string (locale-aware)
15
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17
.tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
19
.tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
21
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
22
.\" SH-xref - format a cross-reference to an SH section
23
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
32
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
33
.\" SH - level-one heading that works better for non-TTY output
34
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36
.\" put an extra blank line of space above the head in non-TTY output
43
.nr an-prevailing-indent \\n[IN]
47
.HTML-TAG ".NH \\n[an-level]"
49
.nr an-no-space-flag 1
51
\." make the size of the head bigger
56
.\" if n (TTY output), use uppercase
61
.\" if not n (not TTY), use normal case (not uppercase)
65
.\" if not n (not TTY), put a border/line under subheading
70
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
71
.\" SS - level-two heading that works better for non-TTY output
72
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
77
.nr an-prevailing-indent \\n[IN]
82
.nr an-no-space-flag 1
85
\." make the size of the head bigger
91
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
92
.\" BB/BE - put background/screen (filled box) around block of text
93
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
106
.if "\\$2"adjust-for-leading-newline" \{\
114
.nr BW \\n(.lu-\\n(.i
117
.ie "\\$2"adjust-for-leading-newline" \{\
118
\M[\\$1]\h'1n'\v'+.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
121
\M[\\$1]\h'1n'\v'-.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
132
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
133
.\" BM/EM - put colored marker in margin next to block of text
134
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
151
\M[\\$1]\D'P -.75n 0 0 \\n(BHu -(\\n[.i]u - \\n(INu - .75n) 0 0 -\\n(BHu'\M[]
159
.\" -----------------------------------------------------------------
160
.\" * set default formatting
161
.\" -----------------------------------------------------------------
162
.\" disable hyphenation
164
.\" disable justification (adjust text to left margin only)
166
.\" -----------------------------------------------------------------
167
.\" * MAIN CONTENT STARTS HERE *
168
.\" -----------------------------------------------------------------
170
fluxbox-menu \- fluxbox(1) menu syntax
177
~/\&.fluxbox/windowmenu
180
Variable parameters are shown in emphasis: \fIargument\fR
182
All other characters shown are required verbatim\&. Whitespce is only required to delimit words, but it is fine to add more whitespace\&.
185
There are two types of menus in fluxbox which can be configured\&.
187
The first is the root menu, which normally appears when you right\-click on the desktop\&.
189
The first is the \fBROOT MENU\fR (Or right\-click menu), is usually bound to a right\-click on the desktop, though this binding can be changed in the `keys\' file (\fBfluxbox\-keys(5)\fR)\&. This same syntax is used for the \fBCustomMenu\fR command, also mentioned in \fBfluxbox\-keys(5)\fR\&.
191
Fluxbox installs a default root menu file in \fB@pkgdatadir@/menu\fR\&. You can also use fluxbox \-i to confirm this location\&. Of course this system\-wide menu can be customized for all users at once, but it is also possible to create an individual menu file for each user\&. By convention, users create a menu file in \fB~/\&.fluxbox/menu\fR\&. Once you\'ve created your own menu file, you\'ll want to make sure that you properly declare this location in your `init\' file so that fluxbox knows where to look\&. See \fBRESOURCES\fR, below for details\&.
193
The second type is the \fBWINDOW MENU\fR, which defines the contents of the menu which appears when you right\-click on a window\'s titlebar or iconbar\&. This opens a menu file as defined by \fB~/\&.fluxbox/windowmenu\fR\&. If this file does not exist, fluxbox will copy in the default from \fB@pkgdatadir@/windowmenu\fR\&.
195
You do not need to \(lqreload\(rq fluxbox after editing the apps file, the changes should be taken into account the next time you open the menu\&.
198
The root menu must begin with a \fB[begin]\fR tag and end with an \fB[end]\fR tag, and every tag must be on its own line\&.
200
There are up to four fields in a menu line\&. They are of the form:
202
[\fItag\fR] (\fIlabel\fR) {\fIcommand\fR} <\fIicon\fR>
205
The <\fIicon\fR> field is always optional when show below\&. If specified, the \fIicon\fR will be scaled down and displayed in the menu alongside the text label of the item\&. It must be in \&.xpm or \&.png format\&.
207
Any line that starts with a \fI#\fR or \fI!\fR is considered a comment and ignored by fluxbox\&. Also, in the label/command/filename fields you can escape any character\&. Using \fI\e\e\fR inserts a literal back\-slash into the label/command/filename field\&.
209
You may enter labels, commands, and icons using characters from any \fBiconv(1)\fR language/locale by specifying the encoding used via the \fB[encoding]\fR tag, detailed below\&.
210
.SS "Structural Tags"
212
\fB[begin]\fR (\fItitle\fR)
214
This tells fluxbox to start parsing the menu file\&. This tag is required for fluxbox to read your menu file\&. If it cannot find it, the system default menu is used in its place\&. The
216
appears at the top of the menu\&. And
218
tag is required to end the menu\&.
221
\fB[submenu]\fR (\fIlabel\fR) {\fItitle\fR} <\fIicon\fR>
223
This tells fluxbox to create and parse a new menu, which is inserted as a submenu into the parent menu\&. These menus are parsed recursively, so there is no limit to the number of levels or nested submenus you can have\&. The
225
is the text that will appear in the parent menu, and the
227
is shown at the top of the submenu\&. If omitted, the
229
will be the same as the
232
tag is required to end the submenu\&.
237
This tells fluxbox that it is at the end of a menu\&. This can either be a
241
tag of the main root menu\&. There must be at least one of these tags in your menu to correspond to the required
243
tag, and one for each
247
\fB[encoding]\fR {\fIencoding\fR}
251
section and specifies the string encoding of all strings until the matching
253
tag\&. For a list of available encodings on your system, run
264
\fB[include]\fR (\fIpath\fR)
266
Parses the file specified by filename inline with the current menu\&. The
268
can be the full path to a file or it can begin with
269
\fB~/\fR, which will be expanded into your home directory\&. If
271
is a directory, then all files in that directory are included\&.
276
This will create a nice separation line\&. Useful for splitting up sections in a \(lqpretty\(rq way\&. The optional
278
is not displayed, but can be useful for internal documentation or script parsing of menu files\&.
281
\fB[nop]\fR (\fIlabel\fR) <\fIicon\fR>
283
Insert a non\-operational item into the current menu\&. This is much like
284
\fB[separator]\fR, but instead of a line, it inserts a
285
\fIlabel\fR\&. This can be used to help format the menu into blocks or sections if so desired\&. The
287
is optional, and if omitted a blank item will be inserted\&.
291
\fB[exec]\fR (\fIlabel\fR) {\fIcommand\&...\fR} <\fIicon\fR>
293
Inserts a command item into the menu\&. When you select the menu item from the menu, fluxbox runs
297
(or /bin/sh if $SHELL is not set)\&. You can use this to launch applications, run shell scripts, etc\&. Since all arguments are passed verbatim to te shell, you can use environment variables, pipes, or anything else the shell can do\&. Note that processes only see environment variables that were set before fluxbox started (such as in ~/\&.fluxbox/startup)\&.
299
.SS "Fluxbox Functions"
301
\fB[config]\fR (\fIlabel\fR) <\fIicon\fR>
303
Inserts a fluxbox native submenu item, containing numerous configuration options concerning window placement, focus style, window moving style, etc\&. See
304
\fBConfiguration Menu\fR
310
\fB[reconfig]\fR (\fIlabel\fR) <\fIicon\fR>
312
When selected this item re\-reads the current style and menu files and applies any changes\&. This is useful for creating a new style or theme, as you don\'t have to constantly restart fluxbox every time you save your style\&. However, fluxbox automatically rereads the menu whenever it changes\&.
315
\fB[restart]\fR (\fIlabel\fR) {\fIcommand\fR} <\fIicon\fR>
317
This tells fluxbox to restart\&. If
319
is supplied, it shuts down and runs the command (which is commonly the name of another window manager)\&. If
321
is omitted, fluxbox restarts itself\&.
324
\fB[exit]\fR (\fIlabel\fR) <\fIicon\fR>
326
Inserts an item that shuts down and exits fluxbox\&. Any open windows are reparented to the root window before fluxbox exits\&.
329
\fB[style]\fR (\fIlabel\fR) {\fIfilename\fR} <\fIicon\fR>
331
This tells fluxbox to insert an item that, when selected, reads style file named filename and apply the new textures, colors and fonts to the current running session\&.
334
\fB[stylesmenu]\fR (\fIdirectory\fR) <\fIicon\fR>
336
Reads all filenames from the specified directory, assuming that they are all valid style files, and creates inline menu items in the current menu for every filename, that, when selected by the user will apply the selected style file to the current session\&. The labels that are created in the menu are the filenames of the style files\&.
339
\fB[stylesdir]\fR (\fIlabel\fR) {\fIdirectory\fR} <\fIicon\fR>
341
Creates a submenu entry with
343
(that is also the title of the new submenu), and inserts in that submenu all filenames in the specified
344
\fIdirectory\fR, assuming that they are all valid style files (directories are ignored) in the same way as the
350
commands make it possible to install style files without editing your init file\&.
353
\fB[wallpapers]\fR (\fIdirectory\fR) {\fIcommand\fR} <\fIicon\fR>
355
This inserts a menu item to set the wallpaper for each file in the given directory\&. The
357
is optional, and defaults to
361
\fB[workspaces]\fR (\fIlabel\fR) <\fIicon\fR>
363
This tells fluxbox to insert a link to the workspaces menu directly into your menu\&. See
370
\fB[\fR\fIcommand\fR\fB]\fR (\fIlabel\fR) <\fIicon\fR>
372
In addition to the commands above, any legal keys file
374
may be used as a menu item\&. See
375
\fBfluxbox\-keys(5)\fR
376
for more information\&.
380
Like the \fBROOT MENU\fR, this menu file must start with \fB[begin]\fR and end with \fB[end]\fR\&. However, this file consists of only one \fB[\fR\fItag\fR\fB]\fR per line with no labels, commands, or icons\&.
382
The available tags in this menu are:
386
Provides a menu item to shade or unshade (or, roll\-up) the window\&. This is equivalent to the shade titlebar button\&.
391
Provides a menu item to stick or unstick the window\&. Stuck windows are displayed on all workspaces\&. This is equivalent to the stick titlebar button\&.
396
Provides a menu item to maximize or unmaximize the window, equivalent to the maximize titlebar button\&. The button with which you click alters the behaviour of this item as follows:
406
Button 1 (Un)Maximize as normal\&.
417
Button 2 (Un)Maximize window vertically\&.
428
Button 3 (Un)Maximize window horizontally\&.
434
Provides a menu item to iconify (or, minimize) the window, equivalent to the iconify titlebar button\&.
439
Closes the window gracefully, equivalent to the titlebar button\&.
444
Kills the window\'s process, like
450
Raise the window to the top of the stack within its layer\&.
455
Lower the window to the bottom of the stack within its layer\&.
458
\fB[settitledialog]\fR
460
Opens a dialog which can be used to set the window\'s title\&. Some applications may re\-set their own title from time\-to\-time, wiping out your setting\&.
465
Sends the window to a different workspace\&. When you select the workspace with a middle\-click, fluxbox will also change to the new workspace\&. A regular click only sends the window\&.
470
Adds a \(lqLayer\&...\(rq submenu which lets you change the layer of this window\&.
475
Adds a \(lqTransparency\&...\(rq submenu which lets you change the focused and unfocused transparency of this window\&.
480
Adds the \(lqRemember\&...\(rq menu item, which allows you to specify which settings should be stored in the `apps\' file (See
481
\fBfluxbox\-apps(5)\fR
487
Adds a horizontal line to the menu
491
\fB~/\&.fluxbox/menu\fR
493
This is the default location for the user\'s root menu\&.
496
\fB@pkgdatadir@/menu\fR
498
This is the system\-wide root menu file\&. It will be used if the user\'s root menu is missing or unparseable\&.
501
\fB~/\&.fluxbox/windowmenu\fR
503
This is the user\'s window menu definition file
506
\fB@pkgdatadir@/menu\fR
508
This is the default window menu\&. If the user does not have this file, it will be copied to
509
\fB~/\&.fluxbox/windowmenu\fR
510
on fluxbox startup\&.
514
\fBsession\&.menuFile:\fR \fIlocation\fR
516
This may be set to override the location of the user\'s root menu\&.
520
The \fIcomand\&...\fR field of the \fB[exec]\fR tag can take advantage of other environment variables if they are set before fluxbox is started\&.
523
\fBExample\ \&1.\ \&Root Menu\fR
534
[exec] (rxvt) {rxvt \-ls} </usr/X11R6/share/icons/terminal\&.xpm>
535
[exec] (netscape) {netscape \-install}
536
[exec] (The GIMP) {gimp}
538
[exec] (Vim) {rxvt \-geometry 132x60 \-name VIM \-e screen vim}
539
[exec] (Mutt) {rxvt \-name mutt \-e mutt}
541
[exec] (browser) {mozilla \-browser}
542
[exec] (news) {mozilla \-news}
543
[exec] (mail) {mozilla \-mail}
544
[exec] (edit) {mozilla \-edit}
545
[exec] (compose) {mozilla \-compose}
547
[submenu] (Window Manager)
548
[exec] (Edit Menus) {nedit ~/\&.fluxbox/menu}
549
[submenu] (Style) {Which Style?}
550
[stylesdir] (~/\&.fluxbox/styles)
551
[stylesmenu] (fluxbox Styles) {@pkgdatadir@/styles}
553
[config] (Config Options)
554
[reconfig] (Reconfigure)
567
\fBExample\ \&2.\ \&Default Window Menu\fR
608
Jim Ramsay <i\&.am at jimramsay com> (>fluxbox\-1\&.0\&.0)
619
Curt Micol <asenchi at asenchi com> (>fluxbox\-0\&.9\&.11)
630
Tobias Klausmann <klausman at users sourceforge net> (\(lafluxbox\-0\&.9\&.11)
641
Grubert <grubert at users sourceforge net> (fluxbox)
652
Matthew Hawkins <matt at mh dropbear id au> (blackbox)
663
Wilbert Berendsen <wbsoft at xs4all nl> (blackbox)
667
fluxbox(1) fluxbox\-keys(5) fluxbox\-apps(5) xkill(1) iconv(1)