awesomerc(1) =========== NAME ---- awesomerc - Configuration file for the 'awesome window manager' SYNOPSIS -------- *awesome* reads *$HOME/.awesomerc* by default. You can choose another configuration file with: awesome -c configuration UICB FUNCTIONS -------------- In awesome, a lot of *functions* are available. These functions are called uicb (User Interface Call Backs). Each function can be bound to a key shortcut or a mouse button. General ~~~~~~~ *quit*:: This function quits awesome. *statusbar_toggle*:: Hide or show statusbar. *statusbar_set_position* top, bottom, left, right:: Set the position of the statusbar. *spawn* client:: Execute an external program. *exec* program:: Replace awesome with another window manager (or itself; i.e. reload config). *widget_tell* widget-identifier data:: Feed information to your widgets. Client ~~~~~~ *client_kill*:: Closes the focused client. *client_moveresize* x y width height:: Dynamically move and resize floating windows. Coordinates can be relative or absolute. Relative values must begin with + or -. E.g: to move a window 10 pixels up: "+0 \+10 +0 +0" To move a window in the upper left corner and increase its width by 10px: "0 0 \+0 +10" *client_settrans* float:: Set client transparency, number can be a relative or absolute floating number in percentage. *client_swapnext*:: Swap window placement with the next displayed window. *client_swapprev*:: Swap window placement with the previous displayed window. *client_focusnext*:: Focus next window. *client_focusprev*:: Focus previous window. *client_togglemax*:: Set window fullscreen. Calling this function another time will reset the window to its previous state. *client_togglehorizontalmax*:: Set window's horizontal size to display width. Calling another time will reset the window to its previous state. *client_toggleverticalmax*:: Set window's vertical size to display height. Calling another time will reset the window to its previous state. *client_togglefloating*:: Set window floating or tiled. *client_zoom*:: Set window as master window. *client_movetoscreen* relative or absolute integer:: Move focused window to the nth screen, or next (+1) or previous (-1). If no screen_number is set, move to the next screen. *client_tag* tag number:: Tag focused window with this tag. *client_toggletag*:: Add or remove tag to focused window. *client_movemouse*:: Move client window with mouse. *client_resizemouse*:: Resize client window with mouse. Tag ~~~ *tag_setlayout* relative or absolute integer:: Set layout number; or just switch to the next layout for current tag. *tag_toggleview* tag:: Add windows tagged with tag number to current display. *tag_view* tag number:: View windows tagged with tag number. *tag_viewnext*:: Show windows tagged with next tag in list. *tag_viewperv*:: Show windows tagged with previous tag in list. *tag_viewprev_selected*:: Switch back to the previously displayed set of tags. *tag_setmwfact* relative or absolute float:: Set master width factor. *tag_setncol* relative or absolute integer:: Set number of columns for non-master windows. *tag_setnmaster* relative or absolute integer:: Set number of master windows. Screen ~~~~~~ *screen_focus* relative or absolute integer:: Select Screen and focus first window and move mouse. WIDGETS ------- Statusbars can be customized by modifying widgets names, order and options. taglist ~~~~~~~ This widget shows the tag list. *mouse*:: Set mouse bindings. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). layoutinfo ~~~~~~~~~~ This widget shows a icon for the selected layout. *mouse*:: Set mouse bindings. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). netwmicon ~~~~~~~~~ This widget shows a icon for the focused window using NET_WM_ICON or icon file set in rule. *mouse*:: Set mouse bindings. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). focustitle ~~~~~~~~~~ This widget shows the title of the focused window. *mouse*:: Set mouse bindings. *font*:: Font to use. *bg*:: Background color. *fg*:: Foreground color. *align*:: Text alignement. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). tasklist ~~~~~~~~ This widget shows a list of running windows. *mouse*:: Set mouse bindings. *font*:: Font to use. *bg*:: Background color. *fg*:: Foreground color. *focus_bg*:: Background color for focused window. *focus_fg*:: Foreground color for focused window. *align*:: Text alignement. *show_icons*:: Show applications icons. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). textbox ~~~~~~~ This widget shows a text. *mouse*:: Set mouse bindings. *font*:: Font to use. *bg*:: Background color. *fg*:: Foreground color. *width*:: Set width. *text*:: Text to change. *align*:: Text alignement. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). iconbox ~~~~~~~ This widget shows an icon. *mouse*:: Set mouse bindings. *image*:: Image file. *resize*:: Resize icon to fit into statusbar. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). progressbar ~~~~~~~~~~~ This widget shows one or more progress-bars. *mouse*:: Set mouse bindings. *width*:: Set width. *bar*:: Draws a bar; Options: fg, bg, bcolor. *fg*:: Foreground color. *bg*:: Background color. *bcolor*:: Border color. *x*:: Horizontal offset (auto-alignment if not set). *y*:: Vertical offset (auto-alignment if not set). FILES ----- For an example of an awesomerc file, see the file provided with the sources. EXAMPLES -------- The general config and subconfig options for the awesomerc: .............................................. Note: when there are no whitespace, quotes are optional. -> "true" or "false" -> #ff9933 (hexadecimal color notation: #red green blue) -> 0.3, 0,8 (often values between 0 and 1 are useful) -> Xft font: mono-10, fixed-12, sans-8, ... -> foobar (choose a name/string) -> "/home/awesome/pics/icon.png" (path to image) -> 1, 10, -3 (positive numbers are required mostly) -> a, 1, F10 (see /usr/include/X11/keysymdef.h w/o XK_ or 'xev') -> "Mod1", "Mod4", "Control" (modifiers) -> regular expression -> "foo bar" -> prog, 3... (argument to a uicb function, where required) -> spawn, exec, client_tag... (see UICB FUNCTIONS above) <{.., ...}> -> list of available options [MULTI] means, you can use an item multiple times. screen [MULTI] { general { allow_lower_floats = border = focus_move_pointer = font = new_become_master = opacity_unfocused = resize_hints = sloppy_focus = snap = } tags { tag [MULTI] { layout = <{dwindle,floating,max, spiral,tile,tileleft}> mwfact = nmaster = } } layouts { layout <{dwindle,floating,max, spiral,tile,tileleft}> { image = } [MULTI] } colors { tab_border = normal_fg = normal_bg = normal_border = focus_fg = focus_bg = focus_border = urgent_fg = urgent_bg = } padding { top = bottom = left = right = } statusbar [MULTI] { position = <{top,bottom,left,right}> height = width = taglist [MULTI] { x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } layoutinfo { x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } netwmicon { x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } focustitle { fg = bg = font = align = <{center,left,right}> x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } tasklist { fg = bg = focus_fg = focus_bg = font = show_icons = align = <{center,left,right}> x = y = mouse [MULTI] { command = arg = button = modkey = {, ...} } } textbox [MULTI] { text = bg = fg = font = width = align = <{center,left,right}> x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } iconbox [MULTI] { image = resize = x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } progressbar [MULTI] { bar { bcolor = bg = fg = } [MULTI] gap = width = height = lpadding = x = y = mouse [MULTI] { button = modkey = {, ...} command = arg = } } } } rules { rule [MULTI] { name = xproperty_name = xproperty_value = float = <{auto,true,false}> tags = screen = icon = not_master = } } keys { key [MULTI] { key = modkey = {, ...} command = arg = } keylist [MULTI] { keylist = {, ...} modkey = {, ...} command = arglist = {, ...} } } mouse { client [MULTI] { button = modkey = {, ...} command = arg = } root [MULTI] { button = modkey = {, ...} command = arg = } } .............................................. SEE ALSO -------- awesome(1) awesome-client(1) AUTHORS ------- This man page was written by Julien Danjou and Marco Candrian . WWW --- http://awesome.naquadah.org