Log in



Tiling Window Managers, pt. 1: Intro

Wednesday, July 7th, 2010 by adam

(This is the first in a series on tiling window managers.)

Ever wish your programs all started maximized? That the computer handled resizing things so you didn’t have to dig around for that tiny resize corner with the mouse? That you could make better use of your screen real estate than wasting it on window borders and decorations? Wish you could have multiple windows side by side without having to resize and position them by hand?

Tiling window managers are the solution.

Normal windows managers (such as those in Gnome, KDE, OS-X, or Windows) are what’s technically known as stacking window managers. They manage a stack of windows that you can drag around your desktop like a pile of papers on a real desk. The problem with this paradigm is that it means that you, the user, are the one that has to arrange everything. (I find OS-X especially annoying about this, because the maximize button never seems to work the way I want it to.)

Why not let the computer take care of it? That’s what it’s there for, after all: to handle the annoying, repetitive tasks.

Tiling window managers break the screen down into a grid with multiple cells, each containing a window. These cells are then laid out according to pre-configured rules. At its most basic, a tiling window manager can add and remove cells in the grid, let you resize them if needed, and give you a way to leave. Most of them go quite a bit further than this.

Another feature of most tiling window managers is that they’re keyboard-centric. If you’re typing in a stacked window environment, you must take your hand from the keyboard, find the mouse, move it over to some tiny control point on the window, deal with that, and then find your keyboard position again. In a tiled environment, your hands stay on the keyboard; just hit a couple of hotkeys, and you can get back to what you were doing in the first place. I find it’s noticeably less disruptive to my workflow.

Examples
There are many tiling window managers available for Linux and UNIX systems. Some of the more prominent include:

There are many more beyond this, of course. The rest of this article series will focus on Bluetile, dwm, awesome, xmonad, and Musca as representative of modern TWMs.

If you’re on Windows or OS-X, you can’t easily change your window manager. There are programs that handle tiling separately, though. For Windows, check out HashTWM and bug.n; and for OS-X, there’s SizeUp ($13). I haven’t tried them myself yet as I normally only run Linux at home and usually need stock environments for support reasons at work. If you’ve used one of them, or if you have another suggestion, leave a comment.

Incoming search terms for the article:

3 Responses to “Tiling Window Managers, pt. 1: Intro”

  1. Navi says:

    Any free / open-source options for OSX? I’m one of the very few poor Mac users out there. ^^; Of course, Expose and Spaces basically add tiling-like functionality to a stacking manager, so there really isn’t too much of a need to change, is there?…

    • adam says:

      Well, Optimal Layout has a 7-day free trial… From what I can tell, it offers about the same functionality to SizeUp. But then, SizeUp has a demo version too.
      There’s also the open-source Shiftit which seems to have less functionality but is free. If you try any of these, let me know how it works out for you.

      • Navi says:

        Update! Trying out Shiftit right now – as in, I installed it like two minutes ago, and already I love it and can see great potential. So far, it’s an excellent combination of stacking and tiling, and it does great with the (n00bish) simplicity that I (and I think most Mac users) prefer. I’ll review it a little more in depth for you once I’ve has a chance to fool around with it more, if you like.

Leave a Reply

Tags