[Haskell] ANNOUNCE: xmonad 0.2

Spencer Janssen sjanssen at cse.unl.edu
Wed May 30 21:45:28 EDT 2007

The xmonad dev team is pleased to announce the 0.2 release of:

                    xmonad: a tiling window manager


Xmonad is a tiling window manager for X. Windows are arranged
automatically to tile the screen without gaps or overlap, maximising
screen use. All features of the window manager are accessible from the
keyboard: a mouse is strictly optional, greatly increasing productivity
in X. 

Xmonad is written and extensible in Haskell, and custom layout
algorithms, and other extesions, may be implemented by the user in
config files. Layouts may be applied dynamically, and separate layouts
can be used on each workspace. A guiding principle of the user interface
is predictability: users should know in advance precisely the window
arrangement that will result from any action, leading to an intuitive
user interface.  


    * Automatic window tiling and management
    * First class keyboard support: a mouse is unnecessary
    * Full multihead/Xinerama support
    * XRandR support to rotate, add or remove monitors
    * Per-workspace layout algorithms
    * Per-screen non-built in status bars, with arbitrary geometry
    * Dynamic restart/reconfigure preserving workspace state
    * Tiny code base (~500 lines of Haskell)
    * Fast, small and simple. No interpreters, no heavy extension

Since 0.1, the following notable features and bug fixes have appeared:

 New features:

  * XRandR support, for dynamically adding, removing or rotating
  * State-preserving dynamic restart
  * Popup, customisable status bar support
  * Multiple clients may appear in the master pane
  * mod-shift-j/k, to swap windows with their neighbours
  * mod-n, to resize windows
  * User-specified layout algorithms may be written in config files
  * All layouts may be 'mirrored' (rotated)
  * configurable window border size and colour

 Design changes:

  * Reimplemented core of xmonad with a 'zipper' data type to track
focus by construction. We believe this is a first.
  * Use of Neil Mitchell's 'catch' program to verify pattern match
  * Use of ReaderT and StateT to partition read-only and modifiable
  * Custom layout messages handled with open data type simulation
  * More QuickCheck properties
Bug fixes:

  * numlock handling is fixed

More information, screenshots, documentation and community resources are
available from:


Xmonad is available from hackage, and via darcs. Happy hacking!

The Xmonad Team:

    Spencer Janssen
    Don Stewart
    Jason Creighton

Xmonad has also received patches from:

    Alec Berryman
    Chris Mears
    Daniel Wagner
    David Glasser
    David Lazar
    David Roundy
    Joe Thornber
    Miikka Koskinen
    Neil Mitchell
    Nick Burlett
    Robert Marlow
    Sam Hughes
    Shae Erisson

More information about the Haskell mailing list