and experimental window manager
by Tuomo Valkonen
. Rather than windows being separate
entities, they are treated as things which are put into a frame
, and one frame can contain an arbitrary number of windows. It is also very easy to move windows between frames and switch between them.
Unlike many WMs, it is quite easy to configure, and doesn't have the problem of code bloat. In fact, pwm has the philosophy that stuff should be done outside if practical, although it doesn't go to the extremes that wm2 and wmx go; for example, it has a decent built-in menu system (wm2/wmx's can hardly be called "decent"), and it natively supports Windowmaker docklets.
Even with these "extraneous" features, the code weighs in at a paltry 93K download, and the binary is a whole whopping 88k stripped. There are a number of neat third-party apps for this to add in other functionality, as well; in addition to all available Windowmaker docklets, there is a desktop notify program which watches for page change notifications and displays a wmx-style channel indicator.
The configuration is quite straightforward, if a little overwhelming, but in many ways it feels like the Mutt of window managers - it sucks less, and you don't have to use all the features. For example, it's quite simple to remove all of the frame stuff and pretend that it's just a streamlined but pretty version of twm.
It's also incredibly keyboard-friendly. Any key or mouse button event can be mapped to any WM command, and the available WM commands are quite complete, the only notable exception being something like fvwm2's CursorMove primitive, but it's easy enough to use an external utility for that as well. (In fact, just prior to this writing, I hacked one up in 5 minutes and sent it to Mr. Valkonen.)
There is a sister project, ion, which takes the frame concept one step further and turns the screen into basically a graphical version of Emacs split-panes. At the time of this writing, however, using it is somewhat frustrating for a number of reasons.
Irregardless, pwm succeeds in being lightweight and simple without being fugly or underpowered. I have quickly adopted it as my favorite.
It doesn't hurt, by the way, that it looks and feels quite a bit like a functional version of AnimeOS. :)