dwm is an interesting little tiling X window manager. It’s made by the suckless.org people who pride themselves on small useful programs that won’t bloat and bloat over time. This attitude about making small succinct programs is very much in line with my attitudes to programming.
Anyway, I’ve tried lots of alternative X window managers on linux. I’ve yet to find one I really like. I often use icewm because its simple and alt-tab does what I mostly expect it to. I also use xfce4 mainly because it understands a merged FrameBuffer in Xorg ( a lot of Window Managers do not like having an unusually large monitor merged into your somewhat smaller laptop screen display). But I’d read a bit recently about Xmonad and dwm. Xmonad uses haskell and my Slackware 12.0 setup was not going to get haskell running quickly so I looked at dwm. Now dwm does not really work with multiple monitors in mind, so I’ve disabled my external screen to play with it.
dwm is a tiling window manager. I have looked at Ion and Rat Poison (also tiling window managers) and never quite understood what was going on … but dwm is very simple in what it does. Alt-Shift-Enter opens a xterm. Initially it will open full screen. If you open another xterm, your first xterm becomes a full height window taking up say the right 1/3 of the screen, while your new xterm is a full height window on the right hand side taking up about 2/3 of the width. Using Alt-h and Alt-l will make this larger xterm skinnier or narrower … and at the same time makes the 1/3 window on the right larger or skinnier (so they don’t overlap). If you open another xterm, it takes up the 2/3 width space on the left hand side, and the xterm that was there gets pushed onto the right hand side such that there are now two xterms on the right. The basic premise is that you have a sort of ‘big’ window on the left and several smaller windows on the right. Its very quick to flip any of the windows on the right into the main larger view on the left. It’s very keyboard driven, and there aren’t that many keystrokes to remember.
It also lets you switch between tiling and floating window mode. I find I have to do this sometimes as some programs just seem to hate being run in tiled mode … but it is quite good to be able to flip between the two relatively easily.
So far I’ve stuck with dwm a few days now … and I’m getting to like it. THe fact it doesn’t really work with a 2nd monitor is a bit of a pain … but the logic behind how it organises windows doesn’t really work with a 2nd monitor. It’d be nice if someone wrote an X window Manager specifically for two monitors (I’ve never heard of one … and in general I find most window managers don’t work that great on more than one monitor). While dwm promotes a way of interacting with a single monitor, I’m sure there’s someone out there with a vision of how people can work efficiently with two monitors.
For most people, a tiling window manager presents such an obscure way of interacting with a machine that it’s easy to give up in the first minute. But dwm is definately worth a look. You do need to make an effort to use it for a day or two.