diff options
author | Don Stewart <dons@cse.unsw.edu.au> | 2007-05-02 08:18:59 +0200 |
---|---|---|
committer | Don Stewart <dons@cse.unsw.edu.au> | 2007-05-02 08:18:59 +0200 |
commit | 5b6a01b9a27012a0b45051ea07c32f6879e54cfd (patch) | |
tree | 41c39164653a875b2b750afdccfbe32f6f5ef56b /README | |
parent | 8b4bb3bf2222537364dd454ddaa4eadbeb0bed5c (diff) | |
download | metatile-5b6a01b9a27012a0b45051ea07c32f6879e54cfd.tar metatile-5b6a01b9a27012a0b45051ea07c32f6879e54cfd.zip |
update motivational text using xmonad.org
darcs-hash:20070502061859-9c5c1-e6e6c50c174610f5ff7a0438f849fde86ee23739
Diffstat (limited to 'README')
-rw-r--r-- | README | 46 |
1 files changed, 33 insertions, 13 deletions
@@ -1,17 +1,36 @@ - xmonad : a lightweight X11 window manager. - -Motivation: - - dwm is great, but we can do better, building a more robust, - more correct window manager in fewer lines of code, using strong - static typing. Enter Haskell. - - If the aim of dwm is to fit in under 2000 lines of C, the aim of - xmonad is to fit in under 500 lines of Haskell with similar functionality. + xmonad : a lightweight X11 window manager. + + http://xmonad.org + +About: + +Xmonad is a minimalist tiling window manager for X, written in Haskell. Windows +are managed using automatic layout algorithms, which can be dynamically +reconfigured. At any time windows are arranged so as to maximise the use of +screen real estate. All features of the window manager are accessible purely +from the keyboard: a mouse is entirely optional. Xmonad is configured in +Haskell, and custom layout algorithms may be implemented by the user in config +files. A principle of Xmonad is predictability: the user should know in advance +precisely the window arrangement that will result from any action. + +By default xmonad provides three layout algorithms: tall, wide and fullscreen. +In tall or wide mode, windows are tiled and arranged to prevent overlap and +maximise screen use. Sets of windows are grouped together on virtual screens, +and each screen retains its own layout, which may be reconfigured dynamically. +Multiple physical monitors are supported via Xinerama, allowing simultaneous +display of a number of screens. + +By utilising the expressivity of a modern functional language with a rich +static type system, Xmonad provides a complete, featureful window manager in +less than 500 lines of code, with an emphasis on correctness and robustness. +Internal properties of the window manager are checked using a combination of +static guarantees provided by the type system, and type-based automated +testing. A benefit of this is that the code is simple to understand, and easy +to modify. Building: - Get the dependencies +Get the dependencies mtl http://hackage.haskell.org/cgi-bin/hackage-scripts/package/mtl-1.0 X11 http://hackage.haskell.org/cgi-bin/hackage-scripts/package/X11-1.2 @@ -21,7 +40,8 @@ Building: unix http://hackage.haskell.org/cgi-bin/hackage-scripts/package/unix-2.0 (included with ghc) - dmenu 2.{5,6,7} http://www.suckless.org/download/dmenu-2.7.tar.gz + dmenu 2.* http://www.suckless.org/download/dmenu-2.7.tar.gz + (optional) And then build with Cabal: @@ -29,7 +49,7 @@ And then build with Cabal: runhaskell Setup.lhs build runhaskell Setup.lhs install -Then add: +Finally, add: exec /home/dons/bin/xmonad |