API documentation for awesome, a highly configurable X window manager (version v4.3-1413-g6ab8b2d5a-dirty).

Welcome to the documentation for the Awesome window manager. Below you find an overview of the individual parts which links to the full documentation.

If you are a new user, you may want to read 07-my-first-awesome.md to get started. In 05-awesomerc.md, the default configuration is explained.

If you already used awesome in the past, 89-NEWS.md and 17-porting-tips.md should be useful for you.

Default configuration components name:

Guides

Major libraries

AwesomeWM ship multiple libraries. Here is an overview of the purpose and scope of those libraries.

Library Description
gearsUtilities such as color parsing and objects
wiboxAwesome own generic widget framework
awfulEverything related to window managment
awful.widgetWindow management related widgets
awful.layoutThe default stateless client tiling module.
ruledDefine declarative rules on various events
naughtyNotifications
menubarXDG (application) menu implementation
beautifulAwesome theme module

Core_components

awesome AwesomeWM lifecycle API.
awful.keygrabber A keyboard grabbing and transaction object.
client A process window.
drawable awesome drawable API.
gears.timer Timer objects and functions.
mousegrabber awesome mousegrabber API.
naughty.action A notification action.
naughty.notification A notification object.
root awesome root window API.
screen The AwesomeWM screen API.
tag awesome tag API.

Input_handling

awful.button Create easily new buttons objects ignoring certain modifiers.
awful.key Create easily new key objects ignoring certain modifiers.
awful.keyboard Utilities related to the keyboard and keybindings.
mouse awesome mouse API.

Declarative_rules

ruled.client Rules for clients.
ruled.clipboard Rules for the clipboard selection.
ruled.notifications Rules for notifications.
ruled.screen Rules for screens.
ruled.tag Rules for tags.

Widgets

awful.widget.button A simple button widget.
awful.widget.clienticon Container showing the icon of a client.
awful.widget.keyboardlayout
awful.widget.launcher A button widget which hosts a menu or starts a command.
awful.widget.layoutbox Display the current client layout (awful.layout) icon or name.
awful.widget.layoutlist Display the available client layouts for a screen.
awful.widget.prompt The widget version of awful.prompt.
awful.widget.taglist Taglist widget module for awful.
awful.widget.tasklist Tasklist widget module for awful.
awful.widget.watch Watch widget.
naughty.list.actions Manage a notification action list.
naughty.list.notifications Get a list of all currently active notifications.
naughty.widget.icon A notification square icon.
naughty.widget.message A notification content message.
naughty.widget.title A notification title.
wibox.widget.calendar A calendar widget.
wibox.widget.checkbox A boolean display widget.
wibox.widget.graph A graph widget.
wibox.widget.imagebox A widget to display an image.
wibox.widget.piechart Display percentage in a circle.
wibox.widget.progressbar A progressbar widget.
wibox.widget.separator A flexible separator widget.
wibox.widget.slider An interactive mouse based slider widget.
wibox.widget.systray
wibox.widget.textbox A widget to display either plain or HTML text.
wibox.widget.textclock Text clock widget.

Widget_containers

awful.widget.only_on_screen A container that makes a widget display only on a specified screen.
naughty.widget.background A notification background.
wibox.container.arcchart A circular chart (arc chart).
wibox.container.background A container capable of changing the background color, foreground color and widget shape.
wibox.container.constraint Restrict a widget size using one of multiple available strategies.
wibox.container.margin Add a margin around a widget.
wibox.container.mirror Reflect the content widget along the vertical and/or horizontal axis.
wibox.container.place A container used to place smaller widgets into larger space.
wibox.container.radialprogressbar A circular progressbar wrapper.
wibox.container.rotate A container rotating the conained widget by 90 degrees.
wibox.container.scroll This container scrolls its inner widget inside of the available space.
wibox.container.tile Replicate the content of the widget over and over.

Widget_layouts

wibox.layout.align The align layout has three slots for child widgets.
wibox.layout.fixed A fixed layout may be initialized with any number of child widgets, and during runtime widgets may be added and removed dynamically.
wibox.layout.flex A flex layout may be initialized with any number of child widgets, and during runtime widgets may be added and removed dynamically.
wibox.layout.grid A grid layout.
wibox.layout.manual A layout with widgets added at specific positions.
wibox.layout.ratio A layout filling all the available space.
wibox.layout.stack A stacked layout.

Popups_and_bars

awful.hotkeys_popup.widget Popup widget which shows current hotkeys and their descriptions.
awful.menu A menu for awful.
awful.popup An auto-resized, free floating or modal wibox built around a widget.
awful.titlebar Titlebars for awful.
awful.tooltip Tooltip module for awesome objects.
awful.wallpaper Allows to use the wibox widget system to draw the wallpaper.
awful.wibar The main AwesomeWM "bar" module.
awful.widget.calendar_popup A calendar popup wibox.
menubar Menubar module, which aims to provide a freedesktop menu alternative.
naughty.layout.box A notification popup widget.
naughty.layout.legacy A notification popup widget.
wibox

Utility_libraries

gears.debug
gears.filesystem Filesystem module for gears.
gears.geometry Helper functions used to compute geometries.
gears.math Math module for gears.
gears.object The object oriented programming base class used by various Awesome widgets and components.
gears.protected_call
gears.sort Extra sorting algorithms.
gears.string String module for gears.
gears.table Table module for gears.
gears.wallpaper Functions for setting the wallpaper.

Theme_related_libraries

beautiful Theme library.
gears.color This module simplifies the creation of cairo pattern objects.
gears.shape Module dedicated to gather common shape painters.

Client_tiling

dynamite A drop-in replacment for the stateless layout suits

This system also add the possibility to write handlers enabling the use of tabs, spliters or custom client decorator.

dynamite.layout.conditional A specialised of the wibox.container.conditional.
dynamite.layout.ratio A specialised ratio layout with dynamic client layout features.
dynamite.layout.stack A specialised stack layout with dynamic client layout features
dynamite.layout.tabbed A specialised stack layout with a tabbar on top.
dynamite.utils A set of generic functions to manipulate layouts.
dynamite.widget.placeholder Reserve a spot for a client (or nothing) in the client layouts.

Libraries

awful.completion Completion module.
awful.hotkeys_popup Popup widget which shows current hotkeys and their descriptions.
awful.layout Layout module for awful.
awful.permissions Implements EWMH requests handling.
awful.placement Algorithms used to place various drawables.
awful.prompt Prompt module for awful.
awful.spawn Spawning of programs.
awful.util Utility module for awful.
dbus awesome D-Bus API
dynamite.widget.pager Draw a minimap of a tag in a widget.
dynamite.widget.spawn Spawn a client in a reserved spot.
gears.matcher A module to build a set of properties based on a graph of rules.
gears.surface
lib.lain.layout.centerwork make focus.byidx and swap.byidx behave more consistently with other layouts
menubar.menu_gen Menu generation module for menubar
menubar.utils Utility module for menubar
naughty Notification library.
selection awesome selection (clipboard) API
wibox.widget

Sample files

rc.lua The default rc.lua file.
theme.lua The default theme file.

Classes

awful.widget.common
gears.cache Cache object with data that can be garbage-collected.
gears.connection Object oriented way to connect objects.
gears.history A generic and stateful history tracking class.
gears.matrix An implementation of matrices for describing and working with affine transformations.
gears.reactive Utility module to convert functions to Excel like objects.
gears.watcher Fetch information at a specific interval.
menubar.icon_theme (Deprecated) class module for icon lookup for menubar
menubar.index_theme (Deprecated) class module for parsing an index.theme file
signals Handling of signals.
wibox.container.conditional A container displaying a child widget when a condition is met.
wibox.container.scale Resize the content widget by a factor, offset or DPI differential.
wibox.container.template A container designed to update its child widget value automatically.
wibox.drawable Handling of drawables.
wibox.hierarchy Management of widget hierarchies.
wibox.widget.base
wibox.widget.status Several preconfigured status widget for common devices.
xproperties Handling of X properties.

Documentation

00-authors.md
01-readme.md
02-contributing.md
03-declarative-layout.md
04-new-widgets.md
05-awesomerc.md
06-appearance.md
07-my-first-awesome.md
08-client-layout-system.md
09-options.md
10-building-and-testing.md
16-using-cairo.md
17-porting-tips.md
89-NEWS.md
90-FAQ.md
generated by LDoc 1.4.6 Last updated 2021-11-13 00:35:50