1FLUXBOX-MENU(5)                 Fluxbox Manual                 FLUXBOX-MENU(5)
2
3
4

NAME

6       fluxbox-menu - fluxbox(1) menu syntax
7

SYNOPSIS

9       /usr/local/share/fluxbox/menu
10
11       ~/.fluxbox/menu
12
13       ~/.fluxbox/windowmenu
14

SYNTAX

16       Variable parameters are shown in emphasis: argument
17
18       All other characters shown are required verbatim. Whitespace is only
19       required to delimit words, but it is fine to add more whitespace.
20

DESCRIPTION

22       There are two types of menus in fluxbox which can be configured.
23
24       The first is the root menu, which normally appears when you right-click
25       on the desktop.
26
27       The first is the ROOT MENU (Or right-click menu), is usually bound to a
28       right-click on the desktop, though this binding can be changed in the
29       ‘keys’ file (fluxbox-keys(5)). This same syntax is used for the
30       CustomMenu command, also mentioned in fluxbox-keys(5).
31
32       Fluxbox installs a default root menu file in
33       /usr/local/share/fluxbox/menu. You can also use fluxbox -i to confirm
34       this location. Of course this system-wide menu can be customized for
35       all users at once, but it is also possible to create an individual menu
36       file for each user. By convention, users create a menu file in
37       ~/.fluxbox/menu. Once you’ve created your own menu file, you’ll want to
38       make sure that you properly declare this location in your ‘init’ file
39       so that fluxbox knows where to look. See RESOURCES, below for details.
40
41       The second type is the WINDOW MENU, which defines the contents of the
42       menu which appears when you right-click on a window’s titlebar or
43       iconbar. This opens a menu file as defined by ~/.fluxbox/windowmenu. If
44       this file does not exist, fluxbox will copy in the default from
45       /usr/local/share/fluxbox/windowmenu.
46
47       You do not need to “reload” fluxbox after editing the apps file, the
48       changes should be taken into account the next time you open the menu.
49

ROOT MENU

51       The root menu must begin with a [begin] tag and end with an [end] tag,
52       and every tag must be on its own line.
53
54       There are up to four fields in a menu line. They are of the form
55           [tag] (label) {command} <'icon'>
56
57       The <'icon'> field is always optional when shown below. If specified,
58       the icon will be scaled down and displayed in the menu alongside the
59       text label of the item. It must be in .xpm or .png format.
60
61       Any line that starts with a # or ! is considered a comment and ignored
62       by fluxbox. Also, in the label/command/filename fields you can escape
63       any character. Using \\ inserts a literal back-slash into the
64       label/command/filename field.
65
66       You may enter labels, commands, and icons using characters from any
67       iconv(1) language/locale by specifying the encoding used via the
68       [encoding] tag, detailed below.
69
70   Structural Tags
71       [begin] (title)
72           This tells fluxbox to start parsing the menu file. This tag is
73           required for fluxbox to read your menu file. If it cannot find it,
74           the system default menu is used in its place. The title appears at
75           the top of the menu. And [end] tag is required to end the menu.
76
77       [submenu] (label) {title} <'icon'>
78           This tells fluxbox to create and parse a new menu, which is
79           inserted as a submenu into the parent menu. These menus are parsed
80           recursively, so there is no limit to the number of levels or nested
81           submenus you can have. The label is the text that will appear in
82           the parent menu, and the title is shown at the top of the submenu.
83           If omitted, the title will be the same as the label. An [end] tag
84           is required to end the submenu.
85
86       [end]
87           This tells fluxbox that it is at the end of a menu. This can either
88           be a [submenu] or the [begin] tag of the main root menu. There must
89           be at least one of these tags in your menu to correspond to the
90           required [begin] tag, and one for each [submenu].
91
92       [encoding] {encoding}
93           This begins an [encoding] section and specifies the string encoding
94           of all strings until the matching [endencoding] tag. For a list of
95           available encodings on your system, run iconv -l.
96
97       [endencoding]
98           This ends an [encoding] section.
99
100       [include] (path)
101           Parses the file specified by filename inline with the current menu.
102           The path can be the full path to a file or it can begin with ~/,
103           which will be expanded into your home directory. If path is a
104           directory, then all files in that directory are included.
105
106       [separator]
107           This will create a nice separation line. Useful for splitting up
108           sections in a “pretty” way. The optional comment is not displayed,
109           but can be useful for internal documentation or script parsing of
110           menu files.
111
112       [nop] (label) <'icon'>
113           Insert a non-operational item into the current menu. This is much
114           like [separator], but instead of a line, it inserts a label. This
115           can be used to help format the menu into blocks or sections if so
116           desired. The label is optional, and if omitted a blank item will be
117           inserted.
118
119   Applications
120       [exec] (label) {command...} <'icon'>
121           Inserts a command item into the menu. When you select the menu item
122           from the menu, fluxbox runs command...  in your $SHELL (or /bin/sh
123           if $SHELL is not set). You can use this to launch applications, run
124           shell scripts, etc. Since all arguments are passed verbatim to the
125           shell, you can use environment variables, pipes, or anything else
126           the shell can do. Note that processes only see environment
127           variables that were set before fluxbox started (such as in
128           ~/.fluxbox/startup).
129
130   Fluxbox Functions
131       [config] (label) <'icon'>
132           Inserts a fluxbox native submenu item, containing numerous
133           configuration options concerning window placement, focus style,
134           window moving style, etc. See Configuration Menu in fluxbox(1) for
135           details.
136
137       [reconfig] (label) <'icon'>
138           When selected this item re-reads the current style and menu files
139           and applies any changes. This is useful for creating a new style or
140           theme, as you don’t have to constantly restart fluxbox every time
141           you save your style. However, fluxbox automatically rereads the
142           menu whenever it changes.
143
144       [restart] (label) {command} <'icon'>
145           This tells fluxbox to restart. If command is supplied, it shuts
146           down and runs the command (which is commonly the name of another
147           window manager). If command is omitted, fluxbox restarts itself.
148
149       [exit] (label) <'icon'>
150           Inserts an item that shuts down and exits fluxbox. Any open windows
151           are reparented to the root window before fluxbox exits.
152
153       [style] (label) {filename} <'icon'>
154           This tells fluxbox to insert an item that, when selected, reads
155           style file named filename and apply the new textures, colors and
156           fonts to the current running session.
157
158       [stylesmenu] (directory) <'icon'>
159           Reads all filenames from the specified directory, assuming that
160           they are all valid style files, and creates inline menu items in
161           the current menu for every filename, that, when selected by the
162           user will apply the selected style file to the current session. The
163           labels that are created in the menu are the filenames of the style
164           files.
165
166       [stylesdir] (label) {directory} <'icon'>
167           Creates a submenu entry with label (that is also the title of the
168           new submenu), and inserts in that submenu all filenames in the
169           specified directory, assuming that they are all valid style files
170           (directories are ignored) in the same way as the [stylesdir]
171           command does. Both [stylesdir] and [stylesmenu] commands make it
172           possible to install style files without editing your init file.
173
174       [wallpapers] (directory) {command} <'icon'>
175           This inserts a menu item to set the wallpaper for each file in the
176           given directory. The command is optional, and defaults to fbsetbg.
177
178       [workspaces] (label) <'icon'>
179           This tells fluxbox to insert a link to the workspaces menu directly
180           into your menu. See Workspace Menu in fluxbox(1) for details.
181
182       [command] (label) <'icon'>
183           In addition to the commands above, any legal keys file command may
184           be used as a menu item. See fluxbox-keys(5) for more information.
185

WINDOW MENU

187       Like the ROOT MENU, this menu file must start with [begin] and end with
188       [end]. However, this file consists of only one [tag] per line with no
189       labels, commands, or icons.
190
191       The available tags in this menu are:
192
193       [shade]
194           Provides a menu item to shade or unshade (or, roll-up) the window.
195           This is equivalent to the shade titlebar button.
196
197       [stick]
198           Provides a menu item to stick or unstick the window. Stuck windows
199           are displayed on all workspaces. This is equivalent to the stick
200           titlebar button.
201
202       [maximize]
203           Provides a menu item to maximize or unmaximize the window,
204           equivalent to the maximize titlebar button. The button with which
205           you click alters the behaviour of this item as follows:
206
207           ·   Button 1 (Un)Maximize as normal.
208
209           ·   Button 2 (Un)Maximize window vertically.
210
211           ·   Button 3 (Un)Maximize window horizontally.
212
213       [iconify]
214           Provides a menu item to iconify (or, minimize) the window,
215           equivalent to the iconify titlebar button.
216
217       [close]
218           Closes the window gracefully, equivalent to the titlebar button.
219
220       [kill]
221           Kills the window’s process, like xkill(1).
222
223       [raise]
224           Raise the window to the top of the stack within its layer.
225
226       [lower]
227           Lower the window to the bottom of the stack within its layer.
228
229       [settitledialog]
230           Opens a dialog which can be used to set the window’s title. Some
231           applications may re-set their own title from time-to-time, wiping
232           out your setting.
233
234       [sendto]
235           Sends the window to a different workspace. When you select the
236           workspace with a middle-click, fluxbox will also change to the new
237           workspace. A regular click only sends the window.
238
239       [layer]
240           Adds a “Layer...” submenu which lets you change the layer of this
241           window.
242
243       [alpha]
244           Adds a “Transparency...” submenu which lets you change the focused
245           and unfocused transparency of this window.
246
247       [extramenus]
248           Adds the “Remember...” menu item, which allows you to specify which
249           settings should be stored in the ‘apps’ file (See fluxbox-apps(5)
250           for more details).
251
252       [separator]
253           Adds a horizontal line to the menu
254

FILES

256       ~/.fluxbox/menu
257           This is the default location for the user’s root menu.
258
259       /usr/local/share/fluxbox/menu
260           This is the system-wide root menu file. It will be used if the
261           user’s root menu is missing or unparseable.
262
263       ~/.fluxbox/windowmenu
264           This is the user’s window menu definition file
265
266       /usr/local/share/fluxbox/menu
267           This is the default window menu. If the user does not have this
268           file, it will be copied to ~/.fluxbox/windowmenu on fluxbox
269           startup.
270

RESOURCES

272       session.menuFile: location
273           This may be set to override the location of the user’s root menu.
274

ENVIRONMENT

276       The comand... field of the [exec] tag can take advantage of other
277       environment variables if they are set before fluxbox is started.
278

EXAMPLES

280       Root Menu.
281
282           # fluxbox menu file
283           [begin] (fluxbox)
284               [exec] (rxvt) {rxvt -ls} </usr/X11R6/share/icons/terminal.xpm>
285               [exec] (netscape) {netscape -install}
286               [exec] (The GIMP) {gimp}
287               [exec] (XV) {xv}
288               [exec] (Vim) {rxvt -geometry 132x60 -name VIM -e screen vim}
289               [exec] (Mutt) {rxvt -name mutt -e mutt}
290               [submenu] (mozilla)
291                   [exec] (browser) {mozilla -browser}
292                   [exec] (news) {mozilla -news}
293                   [exec] (mail) {mozilla -mail}
294                   [exec] (edit) {mozilla -edit}
295                   [exec] (compose) {mozilla -compose}
296               [end]
297               [submenu] (Window Manager)
298                   [exec] (Edit Menus) {nedit ~/.fluxbox/menu}
299                   [submenu] (Style) {Which Style?}
300                       [stylesdir] (~/.fluxbox/styles)
301                       [stylesmenu] (fluxbox Styles) {/usr/local/share/fluxbox/styles}
302                   [end]
303                   [config] (Config Options)
304                   [reconfig] (Reconfigure)
305                   [restart] (Restart)
306               [end]
307               [exit] (Log Out)
308           [end]
309
310       Default Window Menu.
311
312           [begin]
313             [shade]
314             [stick]
315             [maximize]
316             [iconify]
317             [raise]
318             [lower]
319             [settitledialog]
320             [sendto]
321             [layer]
322             [alpha]
323             [extramenus]
324             [separator]
325             [close]
326           [end]
327
328

AUTHORS

330       ·   Jim Ramsay <i.am at jimramsay com> (>fluxbox-1.0.0)
331
332       ·   Curt Micol <asenchi at asenchi com> (>fluxbox-0.9.11)
333
334       ·   Tobias Klausmann <klausman at users sourceforge net>
335           (⟨fluxbox-0.9.11)
336
337       ·   Grubert <grubert at users sourceforge net> (fluxbox)
338
339       ·   Matthew Hawkins <matt at mh dropbear id au> (blackbox)
340
341       ·   Wilbert Berendsen <wbsoft at xs4all nl> (blackbox)
342

SEE ALSO

344       fluxbox(1) fluxbox-keys(5) fluxbox-apps(5) xkill(1) iconv(1)
345

AUTHOR

347       Jim Ramsay <i.am@jimramsay.com>
348           Author.
349
350
351
352fluxbox-menu.txt               08 February 2015                FLUXBOX-MENU(5)
Impressum