I've attached a patch file which improves on the recently added
tabulous lib a lot, using it will require a bit more config-end logic,
but it's much more powerful and allows for things such as tabbars and
autotabbing.
List of changes:
* [awful] Add awful.hooks.userhook_create and
awful.hooks.userhook_call so external libs can easily add their own
hooks (tabulous uses these)
* Tabulous now uses a tabindex system, instead of a messy circular
table, every set of tabs is now a tabbed view, this is more practical
and allows for the same order to be retained even if the focus shifts
(otherwise, the currently focussed tag would always be the first one
in the tabbar)
* Tabulous now exports a number of extra functions that will help you
in managing your tabs efficiently
* Tabulous now has an autotab_start() function you can call
(preferably right after the require so any other hooks you may have
set up won't interfere with it), when this is on, any newly created
windows will automatically be tabbed into the current tabbed view if
you have one selected (if the focussed window is not part of a tabbed
view, tabulous will do nothing)
* Tabulous bugfixes
Signed-off-by: Julien Danjou <julien@danjou.info>
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
- glib
- GTK+ or Imlib2 (use --with-imlib2 with ./configure)
- dbus (optional, use --with-dbus=no with ./configure to disable)
In order to build the awesome man pages, you need these tools:
- asciidoc (recent version)
- xmlto (recent version)
- docbook XSL stylesheets
In order to build the source code reference, you need these tools:
- doxygen
- graphviz
Building and Installation
-------------------------
If building from git sources, run "./autogen.sh". When autoreconf has
finished, you can follow the following instructions for building a dist
tarball.
After extracting the dist tarball, run "./configure --help" and figure out
what you might want to adapt for your system. Then run ./configure with the
proper parameters, and build and install:
./configure [...]
make
make install # might need root permissions
If you're using gcc as your compiler and do not want awesome's default set
of warning flags, add AWESOME_CFLAGS="" to your "make" lines.
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.