Overview
Bluetile is a tiling window manager designed to integrate with the GNOME desktop
environment. It provides both a traditional, stacking layout mode as well as tiling
layouts where windows are arranged to use the entire screen without overlapping.
Bluetile tries to make the tiling paradigm easily accessible to users coming from
traditional window managers by drawing on known conventions and providing both mouse and
keyboard access for all features.
Bluetile started as a university project and topic of my thesis (you can find
slides of my talks and the thesis
online, but only in German). It now continues as an open source
project. See the wiki
for more background on the motivation behind Bluetile and its
relationship to xmonad.
- Designed to integrate with the GNOME desktop environment
- Hybrid approach: Stacking window layout & tiling layouts available
- All features accessible from mouse, as well as keyboard
- Maximizing & minimizing windows in all layouts
- Good multihead support
- Proper handling of fullscreen applications
Screenshots
Download
Bluetile has packages for a few distributions:
- Debian: 32-bit, 64-bit, package page (scroll down to find other architectures)
- Ubuntu (10.04, Lucid Lynx): 32-bit, 64-bit
Bluetile is also available through the
HackageDB. The current
version is 0.4.3. You need
Cabal to install the
package from there:
If you get a message about unsatisfied dependencies "gtk" and "glade", you will
need to install Gtk2Hs. Your distribution might include packages for it, otherwise
you can get it from http://www.haskell.org/gtk2hs/.
If you install as a normal user, Cabal will put the binaries into the
directory ~/.cabal/bin by default. Add this directory to your PATH or
run the command as given below.
If you encounter problems during installation, have a look at the
wiki
for some more details.
Documentation
Preferably you should start Bluetile
from a terminal under GNOME + Metacity. Bluetile will replace the currently
running window manager (if the window manager supports this) and start up.
This is a list of most keyboard shortcuts for Bluetile:
| Win+Return | Launch terminal |
| Win+p | Launch GNOME "Run application" dialog |
| Win+a | Switch to stacking window layout |
| Win+s | Switch to tiled horizontal layout |
| Win+d | Switch to tiled vertical layout |
| Win+f | Switch to fullscreen layout |
| Win+j | Move focus to the next window |
| Win+k | Move focus to the previous window |
| Win+Space | Move focus to the master window |
| Win+Shift+j | Swap the focused window with the next window |
| Win+Shift+k | Swap the focused window with the previous window |
| Win+Shift+Space | Swap the focused window with the master window |
| Win+h | Shrink the master area |
| Win+l | Expand the master area |
| Win+u | Shrink a slave area |
| Win+i | Expand a slave area |
| Win+, | Increment the number of windows in the master area |
| Win+. | Decrement the number of windows in the master area |
| Win+Shift+c | Close the focused window |
| Win+z | Maximize/zoom focused window |
| Win+m | Minimize focused window |
| Win+Shift+m | Restore next minimized window |
| Win+o | Show window menu for focused window |
| Win+t | Push dialog window back into tiling |
| Win+1 .. Win+9, Win+0 | Switch to workspace N |
| Win+Shift+1 .. Win+Shift+9, Win+Shift+0 | Move client to workspace N |
| Win+w, Win+e, Win+r | Switch to physical/Xinerama screens 1, 2 or 3 |
| Win+Shift+w, Win+Shift+e, Win+Shift+r | Move client to physical/Xinerama screen 1, 2 or 3 |
| Win+F5 | Refresh layout |
| Win+Shift+q | Quit Bluetile |
The full list of keyboard shortcuts is currently only documented
in the source code (see Config.hs
of Bluetile). Also, there is currently no way to change the keyboard shortcuts expect by
modifying the source code. A user-friendly configuration system that is more in line with
Bluetile's goals is planned. You can also have a look at the
wiki
for a possible workaround.
One way to set up Bluetile as your default window manager under GNOME is to make sure that the
environment variable WINDOW_MANAGER contains the path to the Bluetile binary before GNOME starts.
This can be achieved by putting something like the following line into ~/.gnomerc:
Development
Bluetile's repositories are located at
http://code.haskell.org/~jav/.
The wiki
also has a page discussing the development of Bluetile.