About Download News Discussion List IRC Readme Known Issues

Lucca WM


1. Introduction
2. About Bugs and Other Issues
3. Building from Source
4. Starting
5. Mouse Usage
6. Keyboard Usage

1. Introduction

Lucca WM is a tiling window manager for the X Window System written using GTK. It will normally be run on Linux, but it should build and run on any system that has GTK and Xlib.

A window manager is a program that allows the user to control windows that applications create, deciding the size and position of windows and which windows are visible. Most window managers create a titlebar and resizeable border for each window and provide keyboard shortcuts such as Alt+Tab to switch between windows and Alt+F4 to close them.

Lucca WM is different from most window managers because it has a tiling constraint. As long as Lucca WM is running, the windows that you see must fill the screen, and no two windows can overlap. It is also different from most tiling window managers because it allows the user to create any layout of tiles (See the [Mouse Usage] or [Keyboard Usage] section for more information about how to do this.).

2. About Bugs and Other Issues

Lucca WM has not had extensive testing in the wild. That means you will probably encounter some incompatibilities with applications you use, other issues that impair your use of Lucca WM, or features that you think are lacking. Please tell me about these things.

Even if you think the issues you encounter are obvious, I might not know about them. Even if I do, it helps me to know where my priorities should be.

You can contact me by emailing madewokherd@gmail.com.

3. Building from Source

In order to run Lucca WM, you must acquire an executable file that was built in an appropriate format for your operating system and can use the libraries you have installed. I provide an executable for the x86 version of Ubuntu 7.10 (gutsy). Unless you run that operating system or can obtain an executable from somewhere else, you must build an executable from the source code.

The source code and Ubuntu 7.10 binaries are available for download at http://madewokherd.nfshost.com/luccawm/download.htm

Alternatively, the latest (development) source code and complete history is in a Git repository at git://repo.or.cz/luccawm.git

Before you can build Lucca WM, you must have SCons, a C compiler, and development headers for GTK >= 2.10 and Xlib. You should also have development headers for libgnome and libgnomeui so that Lucca WM can be restarted automatically when it crashes or when you log out and back in.

If you are using ubuntu 7.10, you should have the following packages:
* scons
* build-essential
* libx11-dev
* libgtk2.0-dev
* libgnome2-dev (optional)
* libgnomeui-dev (optional)

Once you have the source code and all required packages, build Lucca WM by running scons. The scons command should finish by saying something like "scons: done building targets.".

4. Starting

To replace your current window manager with Lucca WM, type:
$ ./luccawm --replace

Most window managers implement the --replace switch so you should be able to get your old window manager back by running it with --replace. If you have an "Appearance Preferences" program in your system manager, you can also set your window manager by changing the "Visual Effects" setting.

If you want Lucca WM to start automatically next time you log in, you must save your session while it is running. How this is done depends on your session manager. In the GNOME desktop environment, use the Sessions preferences window.

5. Mouse Usage

Lucca WM starts with a single tile that fills the screen.

To add more tiles to the layout, click on one of the Split Tile ("⍇⍈") buttons. You will be asked to click where you want the new tile to appear.

You can resize tiles by dragging the border between them. If you want to combine two tiles, resize one of them so that it covers another tile completely.

You can think of tiles as containers that hold windows but can only can display one window at a time. You can change the window that is displayed by clicking on a window's title. To move a window to a different tile, drag its title.

Lucca WM uses a "focus follows mouse" model. Keyboard input will go to the window where the mouse is.

6. Keyboard Usage

Lucca WM can also be operated with keyboard commands:
* Alt+Tab and Alt+Shift+Tab to switch between windows in the current tile.
* Alt+F4 to close a window.
* Alt+{direction} to move to a different tile.
* Alt+Shift+{direction} to move a window to a different tile.
* Alt+Control+{direction} to split the current tile.
* Alt+R to make the current tile bigger.