User pet84rik seems to have the same affinity for window
managers that I have[1]. He posted about trying out
spectrwm, a tiling window manager[2], so I figured I'd
follow along and try it out for myself for a day.

I've installed and fired-up spectrwm before, but I can't
say that I've ever really given it a fair shake. In the
past, I wanted a WM that was immediately usable- one that
I didn't need to look at the manpage at all on. That's not
really reasonable, but it's how I was. After playing with
TinyWM, and a few others, I'm a lot more patient with the
more esoteric WM's, and I'm glad for it.

So far I've been using spectrwm for about half of a work
day, putting it through my normal workflow paces. I did
have to read the manpage, which I'm not ashamed to admit,
but I found that many of the bindings were already familiar
enough so that they weren't hard to learn.

I haven't ever been a huge fan of tiling WMs, but I'm not
really sure why after spending some time with spectrwm. I
enjoy the tiling behavior and options, and find them easy
to use and understand for the most part. It's excessively
convenient for organzing xterms. The only real issue I
had was opening a browser in one workspace, moving it to
another workspace, then having my new browser windows open
in the original workspace instead of the one I moved the
browser to. That was confusing a bit.

As for customization, I enjoy spectrwm's simple key = val
approach. It "Just Works(Tm)," and there is really nothing
to learn. The config variables are self-explanatory, and
the manpage details the options fully if any aren't clear.
Here is what I changed:

 - Reduced the workspaces. Conf was set to 22. I don't
   need 22, so I set it to 9 (which is still more than
   I normally use, but oh well.)
 - Turned on warp_pointer, which I like.
 - Named my workspaces.
 - Reset the default [term] program to plain xterm
 - Added several familiar program-launch shortcuts
   bound to Mod4 (win) + various keys
 - Bound my keyboard's media buttons to various
   programs and functions (amixer to raise/lower/mute my
   volume; forward/back keys to switch between workspaces.)

That took just a few minutes between editing the file and
using xev to find my key names, a quick MOD+q to restart
the window manager, and all works perfectly.

I should report the memory usage that I've observed for
spectrwm. This is the thing I check first, to see if I
even want to bother learning. I was pleased with what I
saw:

 pidof spectrwm | xargs ps -o rss,sz,vsz
   RSS    SZ    VSZ
  5796 16616  66464

This compares quite well to other light WMs. In terms of
"bang for the buck," (BFTB) at least. It's a very scientific
measure, BFTB.

My conclusion so far is that spectrwm is a pleasant WM to
work with, with a suitable feature set and a low memory
footprint. As pet84rik said in his post "you can maybe do
similar or even the same things with plenty of other WMs,"
but spectrwm does do a good job of keeping it light and
functional.


[1] gopher://sdf.org:70/0/users/pet84rik/BLOG/FEB18/Feb27-spectrwm
[2] gopher://gopherpedia.com:70/0/Tiling window manager