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 for each data section;
461 Options: reverse, fg, fg_center, fg_end, bg, bordercolor.
463 Reverse/mirror the bar.
467 Foreground color in the center of the bar (as gradient).
469 Foreground color at the end of a bar (as gradient).
479 Set height (i.e. 0.9 = 90%)
481 Empty space on both sides.
483 Horizontal offset (auto-alignment if not set).
485 Vertical offset (auto-alignment if not set).
491 This widget shows a graph.
494 Defines a data-stream section;
495 Options: max, scale, fg, fg_center, fg_end and style.
497 This value prints a full graph (default = 100)
499 Re-scales when input > max (see below).
503 Foreground color in the center of the bar (as gradient).
505 Foreground color at the end of a bar (as gradient).
507 bottom (fills to bottom with fg), top, or line.
513 Set height (i.e. 0.9 = 90%)
515 Empty space on the left.
521 Horizontal offset (auto-alignment if not set).
523 Vertical offset (auto-alignment if not set).
529 Here is the global configuration file format, with a list of options
532 ..............................................
533 Note: when there is no whitespace, quotes are optional.
535 <boolean> -> "true" or "false"
536 <color> -> #ff9933 (hexadecimal color notation: #red green blue)
537 <float> -> 0.3, 0,8 (often values between 0 and 1 are useful)
538 <font> -> Xft font: mono-10, fixed-12, sans-8, ...
539 <identifier> -> foobar (choose a name/string)
540 <image> -> "/home/awesome/pics/icon.png" (path to image)
541 <integer> -> 1, 10, -3 (positive numbers are required mostly)
542 <key> -> a, 1, F10 (see /usr/include/X11/keysymdef.h w/o XK_ or 'xev')
543 or a keycode beginning with #
544 <mod> -> "Mod1", "Mod4", "Control" (modifiers)
545 <regex> -> regular expression
546 <string> -> "foo bar"
547 <uicb-arg> -> prog, 3... (argument to a uicb function, where required)
548 <uicb-cmd> -> spawn, exec, client_tag... (see UICB FUNCTIONS above)
549 <{.., ...}> -> list of available options
551 [MULTI] means, you can use an item multiple times.
555 screen <integer> [MULTI]
561 new_become_master = <boolean>
562 new_get_focus = <boolean>
563 opacity_unfocused = <integer>
564 resize_hints = <boolean>
565 sloppy_focus = <boolean>
566 sloppy_focus_raise = <boolean>
568 floating_placement = <{smart,under_mouse}>
569 text_shadow_offset = <int>
570 mwfact_lower_limit = <float>
571 mwfact_upper_limit = <float>
575 tag <identifier> [MULTI]
577 layout = <{dwindle,floating,max,
578 spiral,tile,tileleft,tilebottom,tiletop}>
586 layout <{dwindle,floating,max,
587 spiral,tile,tileleft,
588 tilebottom,tiletop}> { image = <image> } [MULTI]
594 normal_border = <color>
597 focus_border = <color>
608 statusbar <identifier> [MULTI]
610 position = <{top,bottom,left,right}>
614 taglist <identifier> [MULTI]
616 x = <integer> y = <integer>
617 align = <{auto,right,left}>
620 button = <integer> modkey = {<mod>, ...}
621 command = <uicb-cmd> arg = <uicb-arg>
624 layoutinfo <identifier>
626 x = <integer> y = <integer>
627 align = <{auto,right,left}>
630 button = <integer> modkey = {<mod>, ...}
631 command = <uicb-cmd> arg = <uicb-arg>
634 focusicon <identifier>
636 x = <integer> y = <integer>
637 align = <{auto,right,left}>
640 button = <integer> modkey = {<mod>, ...}
641 command = <uicb-cmd> arg = <uicb-arg>
644 tasklist <identifier>
651 show_icons = <boolean>
652 show = <{all,tags,focus}>
653 text_align = <{center,left,right}>
654 x = <integer> y = <integer>
657 command = <uicb-cmd> arg = <uicb-arg>
658 button = <integer> modkey = {<mod>, ...}
661 textbox <identifier> [MULTI]
668 text_align = <{center,left,right}>
669 x = <integer> y = <integer>
670 align = <{auto,right,left}>
673 button = <integer> modkey = {<mod>, ...}
674 command = <uicb-cmd> arg = <uicb-arg>
677 iconbox <identifier> [MULTI]
681 x = <integer> y = <integer>
682 align = <{auto,right,left}>
685 button = <integer> modkey = {<mod>, ...}
686 command = <uicb-cmd> arg = <uicb-arg>
689 progressbar <identifier> [MULTI]
693 reverse = <boolean> bg = <color> bordercolor = <color>
694 fg = <color> fg_center = <color> fg_end = <color>
700 x = <integer> y = <integer>
701 align = <{auto,right,left}>
704 button = <integer> modkey = {<mod>, ...}
705 command = <uicb-cmd> arg = <uicb-arg>
708 graph <identifier> [MULTI]
712 scale = <boolean> max = <float> style = <{bottom, top, line}>
713 fg = <color> fg_center = <color> fg_end = <color>
717 padding_left = <integer>
719 bordercolor = <color>
720 x = <integer> y = <integer>
721 align = <{auto,right,left}>
724 button = <integer> modkey = {<mod>, ...}
725 command = <uicb-cmd> arg = <uicb-arg>
735 xproperty_name = <string>
736 xproperty_value = <regex>
737 float = <{auto,true,false}>
738 master = <{auto,true,false}>
749 key = <key> modkey = {<mod>, ...}
750 command = <uicb-cmd> arg = <uicb-arg>
754 keylist = {<key>, ...}
755 modkey = {<mod>, ...}
757 arglist = {<uicb-arg>, ...}
764 button = <integer> modkey = {<mod>, ...}
765 command = <uicb-cmd> arg = <uicb-arg>
769 button = <integer> modkey = {<mod>, ...}
770 command = <uicb-cmd> arg = <uicb-arg>
773 ..............................................
778 Check awesome's wiki: http://awesome.naquadah.org/wiki/
783 awesome(1) awesome-client(1)
788 This man page was written by Julien Danjou <julien@danjou.info> and Marco Candrian <mac@calmar.ws>.
792 http://awesome.naquadah.org