Minimalist window management with wmii

I've embraced a minimalist approach in the window managers field quite a long time ago since I never really felt at home with the likes of KDE, Gnome or similar full blown desktop environments, rather I was much more comfortable using just a window manager. The minimalist Linux geek should follow a modular approach where different tasks are better accomplished through specialized standalone applications as opposed to a monolithic hell where the desktop environment is typically bloated with needless applications. Some will blindly argue that productivity can only be achieved within a complete monolithic system totally ignoring that different people are productive in different ways. I certainly don't care about drag and dropping or compositing effects as much as I care about solid key chaining or monitor real estate.

Further, opensource is about freedom of use and choice, so why would I stick to some particular application if there are tons of potentially better ones? At the top of my priority list concerning desirable window manager characteristics there are four mandatory requirements. It must be minimalist (not getting in my way or disturbing my work flow), light and fast (too obvious), easily configurable (stable configuration format), dynamic tilling (I don't want to loose time resizing/repositioning windows). Thus Fluxbox has been my choice for a long time fulfilling all those requirements except for the dynamic tilling which is really a somewhat new concept in the world of window management software.

The wmii (window manager improved 2) project not only addresses this gap but further enhances the other three providing what I could describe as the perfect window manager for minimalist geeks. Its supreme tilling algorithm dynamically handles all positioning tasks in one of three modes, the default tilling, stacking or maximized. Although several other tilling window managers such as ion, ratpoison, evilwm, xmonad or dwm (which is a a cut down version of wmii by the same authors) may suit your needs I strongly believe none of them provides the overall functionality of wmii.

Transitioning from the floating (overlapping windows) mess of traditional window managers isn't as straightforward as one might have wished, thus featuring good floating support seems paramount even more when you realize that unfortunately some applications have integrated the floating paradigm into their design. Fortunately though wmii's floating support is probably the most advanced out there, mixing tilled and conventional applications feels therefore quite natural.

Another relevant topic is configuration, having to deal with an ever changing configuration model doesn't really help you being productive. Once again wmii's configuration stands out from the rest since it uses the "everything is a file" concept from the Plan9 Unix system. Following this trait, every aspect of the configuration can be accessed through files in a virtual filesystem resembling "/proc" (in fact "/proc" was inspired by Plan9) which essentially means you run a shell script using whichever commands you like to customize wmii. Things like changing colors or fonts can be as simple as defining shell variables, on the other hand you can unleash all your bash scripting power in order to populate the status bar with some geek stuff, manage every kind of event caught by wmii and things like that.

One final word about wmii's tagging is mandatory. Virtual desktops are pretty much ubiquitous nowadays, but wmii goes one step forward in this area with the concept of tags which generalize this idea. Essentially you can pretty much tag any client with one or more tags for further reference which is really handy for creating specialized views without the constraints of conventional virtual desktops.

Tiling window manager