Mercurial > dotfiles
view .xmonad/xmonad.hs @ 325:64e73453e43f
xmonad: Pull apart custom layout into something readable
This change doesn't affect any behavior, but it does document the custom
layout by naming function parameters. Hopefully, this will make things
easier to fix the next time the XMonad developers break us.
author | Lucas Bergman <lucas@bergmans.us> |
---|---|
date | Tue, 11 Mar 2014 12:49:05 -0500 |
parents | 93a8f55a4e30 |
children |
line wrap: on
line source
import XMonad import XMonad import XMonad.Config.Gnome import XMonad.Hooks.ManageDocks import XMonad.Hooks.ICCCMFocus import XMonad.Layout import XMonad.Layout.Column import XMonad.Layout.LayoutBuilder import XMonad.Util.EZConfig import XMonad.Util.Run(spawnPipe) myLayout = (augieLayout 2) ||| (augieLayout 1) ||| Full augieLayout num = layoutN num mainBox (Just overflowBox) layout overflowLayout where mainBox = relBox 0 0 1 mainHeightFrac overflowBox = relBox 0 0 1 1 layout = Tall 1 0.03 mainWidthFrac overflowLayout = layoutAll (relBox 0 mainHeightFrac 1 1) singleRow mainHeightFrac = 0.75 -- main area takes up this much screen height mainWidthFrac = 0.75 -- main window takes up this much screen width singleRow = Mirror $ Column 1 myDmenuTitleBar = "exec `dmenu_path | dmenu\ \ -p 'Run:'`" main :: IO () main = do xmonad $ gnomeConfig { terminal = "urxvt -sr -bg Black -fg White" , modMask = mod4Mask , layoutHook = avoidStruts myLayout , logHook = takeTopFocus } `additionalKeys` [ ((mod4Mask, xK_a), spawn "gnome-screensaver-command --lock") , ((mod4Mask, xK_p), spawn myDmenuTitleBar) ]