Difference between revisions of "Xmonad/Config archive/brad's xmonad.hs"

From HaskellWiki
Jump to navigation Jump to search
Line 35: Line 35:
 
]
 
]
 
</pre>
 
</pre>
  +
<br/>
 
  +
<hr/>
 
[[Image:brad.png|center|200px]]
 
[[Image:brad.png|center|200px]]

Revision as of 07:29, 12 January 2008

import XMonad 
import qualified XMonad.StackSet as W
import qualified Data.Map as M

-- hopefully it is obvious what changes i want to impose in xmonad:
-- 1. no borders
-- 2. urxvt is my terminal
-- 3. mod+shift+w launches ff in worksapce 2
-- 4. mod+shift+u launches my shell
-- 5. mod+shift+l locks the screen
-- thats it! thanks to all the posters on xmonad.org whose configs i copied!

main :: IO ()
main = xmonad $ defaultConfig
       { borderWidth        = 0
       , terminal           = "urxvt -bg black -fg white -vb +sb"
       , workspaces         = ["shell", "web"] ++ map show [3..9]
       , normalBorderColor  = "#000000"
       , focusedBorderColor = "#000000"
       , keys = \c -> myKeys c `M.union` keys defaultConfig c
       , manageHook         = manageHook defaultConfig <+> myManageHook
       }

myKeys conf@(XConfig {modMask = modm}) = M.fromList $
    [
     ((modm .|. shiftMask, xK_w), spawn "firefox"),
     ((modm .|. shiftMask, xK_u), spawn "urxvt -fg white -bg black -vb +sb -fn \"xft:Liberation Mono:pixelsize=20\""),
     ((modm .|. shiftMask, xK_l), spawn "xlock -mode blank")
    ]

myManageHook :: ManageHook
myManageHook = composeAll [
                className   =? "Firefox-bin"        --> doF(W.shift "web")
               ]



Brad.png