Global Constant
Steve Nay's ramblings

xmonad: the mouseless window manager

The other day I discovered (through link surfing) a window manager called xmonad. It is an extremely small (the compiled executable is 1.2M), lightning fast, sleek window manager for Linux designed to make the most of screen real estate and maximize your productivity using X. It can operate entirely without the mouse.

xmonad works by opening windows in tiles, which are rearranged as you open more windows. The primary window is on the left or top half of the screen (depending on which mode you’re in) and the other windows stack in the other half of the screen. You can switch between windows using Mod+J and Mod+K (“Mod” is the Alt key on my machine), and you can swap windows to and from the primary position. Naturally, there are multitudinous ways to resize, move, and reorder the windows within the different panes. It also includes support for multiple workspaces (as do most WMs) and even multiple monitors if you have them.

I’ve been playing with xmonad for a little while now and I quite enjoy it. It allows me to work easily from the command line but still run my X apps without too much hassle. I’ve found, however, that with programs like Firefox which pop up smaller windows on occasion (e.g., file and settings dialogs), it’s best to run in full-screen mode. When running in the normal tiling mode, the popups sometimes take on strange proportions as they are squeezed into the existing layout. Using full-screen mode usually gives them their natural dimensions.

No title bars, no icons, no nonsense. This window manager is very simple, clean, and fast. There’s a bit of a learning curve with all the keyboard navigation, but for any Linux hacker who knows vim, it shouldn’t be too hard to pick up.

Mostly for my own benefit, but also for any fellow Linux geeks, I’ve posted the process I went through to install xmonad:

UPDATE: Tassilo posted some more technical information about xmonad on his blog. Take a look if you’re interested in diving in yourself. Also, thanks the the guys at xmonad for their link.