* Use __utf8_mark to lookup the final patch for utf8 codepoints.
* Use __utf32_clz_to_len to compute the number of octets needed to encode
a given Unicode codepoint in utf8, rather than inefficient ifs.
* Use static buffers (libc provides MB_LEN_MAX for the matter, and we know
the special keys names won't be longer than 32, so avoid silly p_new's).
* Rework APIs to work with those static buffers, and return a boolean to
tell if conversion worked.
* Factorize ksym XK_* to string conversion using ad-hoc macros.
Signed-off-by: Pierre Habouzit <madcoder@debian.org>
awesome
=======
awesome is an extremely fast, small, and dynamic window manager for X.
Requirements
------------
In order to build awesome itself, you need header files and libs of:
- Xlib, xcb and xcb-util.
- Lua 5.1
- cairo
- pango and pangocairo
- libev
- glib
- GdkPixBuf or Imlib2 (use -DWITH_IMLIB2=1 with cmake)
- dbus (optional, use -DWITH_DBUS=0 with cmake to disable)
- gperf
In order to build the awesome man pages and documentation,
you need these tools:
- asciidoc
- xmlto
- docbook XSL stylesheets
- luadoc
In order to build the source code reference, you need these tools:
- doxygen
- graphviz
Building and Installation
-------------------------
After extracting the dist tarball, run:
cmake .
make
make install # might need root permissions
The source code reference can be built with "make doc".
Running awesome
-----------
Add the following line to your .xinitrc to start awesome using startx
or to .xsession to start awesome using gdm/kdm/xdm...:
exec awesome
In order to connect awesome to a specific display, make sure that
the DISPLAY environment variable is set correctly, e.g.:
DISPLAY=foo.bar:1 exec awesome
(This will start awesome on display :1 of the host foo.bar.)
Configuration
-------------
The configuration of awesome is done by creating a ~/.awesomerc.lua file.
An example is provided in the sources.