7 awesomerc - Configuration file for the 'awesome window manager'
16 <item> [<argument>] { <option> = <value>, ... }
27 The awesomerc file contains configuration informations for *awesome*. It can
28 be used to configure the behaviour and look of awesome in a variety of ways.
30 It is read at startup.
34 awesomerc contains 4 global sections: *screen*, *rules*, *keys* and *mouse* which
39 This is the global section for a physical screen. It must have a title with screen number,
40 starting at 0. It contains several subsections, which are *general*, *tags*, *layouts*, *colors*,
41 *padding* and *statusbar*.
45 General is a section containing some general options for this screen.
48 This defines the window borders size in pixel.
50 This defines the general font used in awesome.
52 If this is set to true, new windows will become the master window.
54 If this is set to true, new windows will get focus.
56 If this is set to true, non-focused windows will have this opacity.
57 This requires an external XComposite manager.
59 If this is set to true, resize hints given by the window will be respected.
60 If this is set to false, window size will be forced.
61 If you dislike gaps between windows, you should try to set it to false.
63 If this is set to true, focus will be set to the window under the mouse. If not,
64 you will have to click on a window to set it focused.
66 If this is set to true with sloppy_focus, when a window is focused with the mouse
67 it will be raised on top of the windows stack.
69 Snap windows to the screen border when it is this pixel away only from the border.
71 Select the floating placement algorithm to use when placing window.
75 Tags is a section containing one or more tag sections, which defines a tag.
79 Tag is a section which contains several options defining a tag.
82 Layout is a name of an available layout which will be set by default on this tag.
84 Set the default master width factor for this tag.
86 Set the default number of columns for non-master windows for this tag.
88 Set the default number of windows which will be treated as master for this tag.
92 Layouts is a section containing a layout list, where each layout is a layout section.
96 Layout is a section which define a layout. It has a title which is the algorithm to use.
99 Set the image path used to describe this layouts, useful in layoutinfo widget.
103 Colors is a section containing the color parameters.
106 Set the normal foreground color.
108 Set the normal background color.
110 Set the unfocused window's border color.
112 Set the focused foreground color.
114 Set the focused background color.
116 Set the focused window's border color.
118 Set the foreground color to use for urgent flag. This is mostly useful
119 with the taglist widget which will use this color whenever a window sets its
120 XUrgencyHint on a non-visible tag.
122 Set the background color to use for urgent flag.
126 Padding is a section containing screen padding parameters.
129 Set the top padding in pixel.
131 Set the bottom padding in pixel.
133 Set the left padding in pixel.
135 Set the right padding in pixel.
139 Statusbar are sections containing statusbars parameters. Each statusbar section
140 must have a title which is the statusbar name. Each statusbar can have none or
141 several widgets (see WIDGETS section for more details) each one identified by its
145 Default statusbar position.
147 Statusbar height. By default, is auto computed with font size.
149 Statusbar width. By default, it will be whole screen.
153 Rules is a section containing a rule list to automatically configure windows.
157 Rule are sections containing the auto-configuration options for one window.
160 Set the window name for name matching as a regular expression.
162 Set the name of the XProperty for XProperty matching.
164 Set the regular expression to match against the named XProperty's value.
166 Set the window to be floating. One of auto, true or false. Defaults to auto.
168 Set the window to be the master. One of auto, true or false. Defaults to
171 Set the tags to be assigned to the window as a regular expression.
173 Set the screen the window should show up on.
175 Set the window's icon.
177 Set the window's opacity.
181 Keys is the section to define your keybindings in. It may consist of multiple
182 key and keylist entries.
186 In a key section you define a single keybinding.
189 The keysym you want to bind.
191 Modifiers that need to be pressed for this binding.
193 The *uicb function* to call.
195 The argument to the *uicb function*, if needed.
199 In a keylist you can define multiple very similar keybindings at once. For
200 example you can define <Mod1>-{1..9} to switch the view to tag 1..9
204 The list of keysyms to bind.
206 Modifiers that need to be pressed for these bindings.
208 The *uicb function* to call.
210 The list of arguments to the *uicb function*, if needed. *Must* match the
215 In the mouse section you may define mouse button bindings for the root and
220 Defines a mouse button binding for events on clients.
223 The mouse button you want to bind.
225 Modifiers that need to be pressed for this binding.
227 The *uicb function* to call.
229 The argument to the *uicb function*, if needed.
233 Defines a mouse button binding for events on the root window.
236 The mouse button you want to bind.
238 Modifiers that need to be pressed for this binding.
240 The *uicb function* to call.
242 The argument to the *uicb function*, if needed.
247 In awesome, a lot of *functions* are available. These functions are called
248 uicb (User Interface Call Backs). Each function can be bound to a key shortcut
254 This function quits awesome.
255 *statusbar_toggle* statusbar-identifier::
256 Hide or show statusbar (with no argument, toggle all).
258 Execute an external program.
260 Replace awesome with another window manager (or itself; i.e. reload config).
261 *widget_tell* widget-identifier data::
262 Feed information to your widgets.
267 Closes the focused client.
268 *client_moveresize* x y width height::
269 Dynamically move and resize floating windows.
270 Coordinates can be relative or absolute. Relative values must begin with + or -.
271 E.g: to move a window 10 pixels up: "+0 \+10 +0 +0" To move a window
272 in the upper left corner and increase its width by 10px: "0 0 \+0 +10"
273 *client_settrans* float::
274 Set client transparency, number can be a relative or absolute floating number in percentage.
276 Swap window placement with the next displayed window.
278 Swap window placement with the previous displayed window.
282 Focus previous window.
284 Set window fullscreen. Calling this function another time will reset the window to its previous state.
285 *client_togglehorizontalmax*::
286 Set window's horizontal size to display width. Calling another time will reset the window to its previous state.
287 *client_toggleverticalmax*::
288 Set window's vertical size to display height. Calling another time will reset the window to its previous state.
289 *client_togglefloating*::
290 Set window floating or tiled.
292 Set window as master window.
293 *client_movetoscreen* relative or absolute integer::
294 Move focused window to the nth screen, or next (+1) or previous (-1). If no screen_number is set, move to the next screen.
295 *client_tag* tag number::
296 Tag focused window with this tag.
298 Add or remove tag to focused window.
300 Move client window with mouse.
301 *client_resizemouse*::
302 Resize client window with mouse.
303 *client_setscratch*::
304 Set or unset client as being the scratch window.
305 *client_togglescratch*::
306 Toggle scratch window.
310 *tag_setlayout* relative or absolute integer::
311 Set layout number; or just switch to the next layout for current tag.
312 *tag_toggleview* tag::
313 Add windows tagged with tag number to current display.
314 *tag_view* tag number::
315 View windows tagged with tag number.
317 Show windows tagged with next tag in list.
319 Show windows tagged with previous tag in list.
320 *tag_prev_selected*::
321 Switch back to the previously displayed set of tags.
322 *tag_setmwfact* relative or absolute float::
323 Set master width factor.
324 *tag_setncol* relative or absolute integer::
325 Set number of columns for non-master windows.
326 *tag_setnmaster* relative or absolute integer::
327 Set number of master windows.
329 Create a new tag with that name.
333 *focus_client_byname* string::
334 Give client focus by its name.
335 *focus_history* negative number::
336 Focus the client that had focused nth focus switch earlier.
340 *screen_focus* relative or absolute integer::
341 Select Screen and focus first window and move mouse.
345 Statusbars can be customized by modifying widgets names, order and options.
349 This widget shows the tag list.
354 Horizontal offset (auto-alignment if not set).
356 Vertical offset (auto-alignment if not set).
362 This widget shows a icon for the selected layout.
367 Horizontal offset (auto-alignment if not set).
369 Vertical offset (auto-alignment if not set).
375 This widget shows a icon for the focused window using NET_WM_ICON or icon file set in rule.
380 Horizontal offset (auto-alignment if not set).
382 Vertical offset (auto-alignment if not set).
388 This widget shows a list of running windows.
399 Background color for focused window.
401 Foreground color for focused window.
405 Show applications icons.
407 Show all windows from all tags, tags clients only or focused client.
409 Horizontal offset (auto-alignment if not set).
411 Vertical offset (auto-alignment if not set).
415 This widget shows a text.
432 Horizontal offset (auto-alignment if not set).
434 Vertical offset (auto-alignment if not set).
440 This widget shows an icon.
447 Resize icon to fit into statusbar.
449 Horizontal offset (auto-alignment if not set).
451 Vertical offset (auto-alignment if not set).
457 This widget shows one or more progress-bars.
460 Draws a bar; Options: fg, bg, bordercolor.
464 Foreground color in the center of the bar (as gradient).
466 Foreground color at the end of a bar (as gradient).
476 Set height (i.e. 0.9 = 90%)
478 Empty space on both sides.
480 Horizontal offset (auto-alignment if not set).
482 Vertical offset (auto-alignment if not set).
488 This widget shows a graph.
491 Defines a data-stream section; Options: max, scale, fg and style.
493 This value prints a full graph (default = 100)
495 Re-scales when input > max (see below).
499 Foreground color in the center of the bar (as gradient).
501 Foreground color at the end of a bar (as gradient).
503 bottom (fills to bottom with fg), top, or line.
509 Set height (i.e. 0.9 = 90%)
511 Empty space on the left.
517 Horizontal offset (auto-alignment if not set).
519 Vertical offset (auto-alignment if not set).
525 Here is the global configuration file format, with a list of options
528 ..............................................
529 Note: when there is no whitespace, quotes are optional.
531 <boolean> -> "true" or "false"
532 <color> -> #ff9933 (hexadecimal color notation: #red green blue)
533 <float> -> 0.3, 0,8 (often values between 0 and 1 are useful)
534 <font> -> Xft font: mono-10, fixed-12, sans-8, ...
535 <identifier> -> foobar (choose a name/string)
536 <image> -> "/home/awesome/pics/icon.png" (path to image)
537 <integer> -> 1, 10, -3 (positive numbers are required mostly)
538 <key> -> a, 1, F10 (see /usr/include/X11/keysymdef.h w/o XK_ or 'xev')
539 or a keycode beginning with #
540 <mod> -> "Mod1", "Mod4", "Control" (modifiers)
541 <regex> -> regular expression
542 <string> -> "foo bar"
543 <uicb-arg> -> prog, 3... (argument to a uicb function, where required)
544 <uicb-cmd> -> spawn, exec, client_tag... (see UICB FUNCTIONS above)
545 <{.., ...}> -> list of available options
547 [MULTI] means, you can use an item multiple times.
551 screen <integer> [MULTI]
557 new_become_master = <boolean>
558 new_get_focus = <boolean>
559 opacity_unfocused = <integer>
560 resize_hints = <boolean>
561 sloppy_focus = <boolean>
562 sloppy_focus_raise = <boolean>
564 floating_placement = <{smart,under_mouse}>
568 tag <identifier> [MULTI]
570 layout = <{dwindle,floating,max,
571 spiral,tile,tileleft,tilebottom,tiletop}>
579 layout <{dwindle,floating,max,
580 spiral,tile,tileleft,
581 tilebottom,tiletop}> { image = <image> } [MULTI]
587 normal_border = <color>
590 focus_border = <color>
601 statusbar <identifier> [MULTI]
603 position = <{top,bottom,left,right}>
607 taglist <identifier> [MULTI]
609 x = <integer> y = <integer>
610 align = <{auto,right,left}>
613 button = <integer> modkey = {<mod>, ...}
614 command = <uicb-cmd> arg = <uicb-arg>
617 layoutinfo <identifier>
619 x = <integer> y = <integer>
620 align = <{auto,right,left}>
623 button = <integer> modkey = {<mod>, ...}
624 command = <uicb-cmd> arg = <uicb-arg>
627 focusicon <identifier>
629 x = <integer> y = <integer>
630 align = <{auto,right,left}>
633 button = <integer> modkey = {<mod>, ...}
634 command = <uicb-cmd> arg = <uicb-arg>
637 tasklist <identifier>
644 show_icons = <boolean>
645 show = <{all,tags,focus}>
646 text_align = <{center,left,right}>
647 x = <integer> y = <integer>
650 command = <uicb-cmd> arg = <uicb-arg>
651 button = <integer> modkey = {<mod>, ...}
654 textbox <identifier> [MULTI]
661 text_align = <{center,left,right}>
662 x = <integer> y = <integer>
663 align = <{auto,right,left}>
666 button = <integer> modkey = {<mod>, ...}
667 command = <uicb-cmd> arg = <uicb-arg>
670 iconbox <identifier> [MULTI]
674 x = <integer> y = <integer>
675 align = <{auto,right,left}>
678 button = <integer> modkey = {<mod>, ...}
679 command = <uicb-cmd> arg = <uicb-arg>
682 progressbar <identifier> [MULTI]
686 fg = <color> fg_center = <color> fg_end = <color>
687 bg = <color> bordercolor = <color>
693 x = <integer> y = <integer>
694 align = <{auto,right,left}>
697 button = <integer> modkey = {<mod>, ...}
698 command = <uicb-cmd> arg = <uicb-arg>
701 graph <identifier> [MULTI]
705 scale = <boolean> max = <float> style = <{bottom, top, line}>
706 fg = <color> fg_center = <color> fg_end = <color>
710 padding_left = <integer>
712 bordercolor = <color>
713 x = <integer> y = <integer>
714 align = <{auto,right,left}>
717 button = <integer> modkey = {<mod>, ...}
718 command = <uicb-cmd> arg = <uicb-arg>
728 xproperty_name = <string>
729 xproperty_value = <regex>
730 float = <{auto,true,false}>
731 master = <{auto,true,false}>
742 key = <key> modkey = {<mod>, ...}
743 command = <uicb-cmd> arg = <uicb-arg>
747 keylist = {<key>, ...}
748 modkey = {<mod>, ...}
750 arglist = {<uicb-arg>, ...}
757 button = <integer> modkey = {<mod>, ...}
758 command = <uicb-cmd> arg = <uicb-arg>
762 button = <integer> modkey = {<mod>, ...}
763 command = <uicb-cmd> arg = <uicb-arg>
766 ..............................................
771 Check awesome's wiki: http://awesome.naquadah.org/wiki/
776 awesome(1) awesome-client(1)
781 This man page was written by Julien Danjou <julien@danjou.info> and Marco Candrian <mac@calmar.ws>.
785 http://awesome.naquadah.org