i3

I'm a little bit obsessive about my computer's performance. To some extent, it's weak (well, a midrange laptop). To some extent, I do a lot with it (programming, remote file management, internet, development). But mostly I like making the computer get out of my way so I can work.

Until recently, I was using XFCE. It's a wonderful desktop environment, with nice integration - all of its applications play nicely together. Earthbound (my laptop) boots to a commandline login. After I enter my credentials, .bash_profile runs startx, which starts XFCE. It works well, except that Earthbound takes fully ten seconds to start X and all the tray applications. I wanted faster. (And yes, I know I'm being absurd.)

Often, I'd found, I would split my workspace horizontally into two windows. Internet, FTP, a text editor, or a terminal shared the XFCE workspaces.

By chance, I came across awesome, a tiling window manager (wm). Whereas in a normal window manager the user sets window size and position, tiling wm's maximize applications, splitting the screen vertically or horizontally as more programs are run. They're also more keyboard-driven, an advantage on laptops.

Looking around a little more, I found i3. It, too, is a tiling wm. Easier to configure than awesome and equipped with simple keyboard commands, it looked promising. So I tried it.

Switching WM's under Arch is a cinch. I edited my .xinitrc file from

exec xfce4 to

exec i3logged out of XFCE, and reissued

startxJust like that, i3 was running. A little configuration later, I had it working to my tastes. I changed the font to 9pt dejavu, added a volume meter, and rearranged a bit on the infobar at the bottom.

The keycommands take a little getting used to, but work very well. Earthbound uses the window key for $mod, and:

$mod + jkl; or arrow keys: Select window up/down/left/right of current
$mod + shift + jkl; or arrow keys: Move window up/down/etc
$mod + 123...: move to workspace n
$mod + vh: When creating new windows, split the active window vertically/horizontally

It sounds complicated, but i3 works surprisingly well. It gives the info I need, minimizes mouse movement, and is superdupergeekylooking.

(It's not the first criteria, but it's fun to have a computer that vaguely emulates MovieHackerOs. Y'know, the strange green liney operating system that everyone from CSI to Tron use.)