% xmonad-Gx.tex \begin{hcarentry}{xmonad} \label{xmonad} \report{Gwern Branwen}%11/11 \status{active development} \makeheader XMonad is a tiling window manager for X. Windows are arranged automatically to tile the screen without gaps or overlap, maximizing screen use. Window manager features are accessible from the keyboard; a mouse is optional. XMonad is written, configured, and extensible in Haskell. Custom layout algorithms, key bindings, and other extensions may be written by the user in config files. Layouts are applied dynamically, and different layouts may be used on each workspace. Xinerama is fully supported, allowing windows to be tiled on several physical screens. Development since the last report has continued; XMonad founder Don Stewart has stepped down and Adam Vogt is the new maintainer. After gestating for 2 years, version 0.10 has been released, with simultaneous releases of the XMonadContrib library of customizations (which has now grown to no less than 216 modules encompassing a dizzying array of features) and the xmonad-extras package of extensions, Details of changes between releases can be found in the release notes: \begin{compactitem} \item \url{http://haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.8} \item \url{http://haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.9} % \item \url{http://haskell.org/haskellwiki/Xmonad/Notable_changes_since_0.10} \item the Darcs repositories have been upgraded to the hashed format \item XMonad.Config.PlainConfig allows writing configs in a more 'normal' style, and not raw Haskell \item Supports using local modules in xmonad.hs; for example: to use definitions from \~/.xmonad/lib/XMonad/Stack/MyAdditions.hs \item xmonad --restart CLI option \item xmonad --replace CLI option \item XMonad.Prompt now has customizable keymaps \item Actions.GridSelect - a GUI menu for selecting windows or workspaces \& substring search on window names \item Actions.OnScreen \item Extensions now can have state \item Actions.SpawnOn - uses state to spawn applications on the workspace the user was originally on, and not where the user happens to be \item Markdown manpages and not man/troff \item XMonad.Layout.ImageButtonDecoration \&\\ XMonad.Util.Image \item XMonad.Layout.Groups \item XMonad.Layout.ZoomRow \item XMonad.Layout.Renamed \item XMonad.Layout.Drawer \item XMonad.Layout.FullScreen \item XMonad.Hooks.ScreenCorners \item XMonad.Actions.DynamicWorkspaceOrder \item XMonad.Actions.WorkspaceNames \item XMonad.Actions.DynamicWorkspaceGroups \end{compactitem} Binary packages of XMonad and XMonadContrib are available for all major Linux distributions. \FurtherReading \begin{compactitem} \item Homepage: \url{http://xmonad.org/} \item Darcs source: \texttt{darcs get} \url{http://code.haskell.org/xmonad} \item IRC channel: \verb+#xmonad @@ irc.freenode.org+ \item Mailing list: \email{xmonad@@haskell.org} \end{compactitem} \end{hcarentry}