rendered paste bodyimport XMonad
import qualified XMonad.StackSet as W
import XMonad.Layouts
import XMonad.Layout.Tabbed
import XMonad.Operations
import XMonad.Config (defaultConfig)
import XMonad.Layout.NoBorders
import XMonad.Actions.WindowBringer
import XMonad.Hooks.DynamicLog
import XMonad.Util.Run (spawnPipe)
import Data.Bits
import qualified Data.Map as M
import Graphics.X11
import System.IO (hPutStrLn)
main = do
xmobar <- spawnPipe "xmobar"
xmonad defaultConfig
{ defaultGaps = [(13,0,0,0)]
, terminal = "urxvt"
, workspaces = map show [1 .. 9 :: Int]
--, workspaces = ["irc", "web"] ++ map show [3 .. 7 :: Int] ++ ["mail", "im"]
--, logHook = dynamicLogWithPP $ sjanssenPP { ppOutput = hPutStrLn xmobar }
, logHook = dynamicLogWithPP $ defaultPP { ppOutput = hPutStrLn xmobar }
, manageHook = composeAll [className =? "trayer" --> doIgnore]
, modMask = mod4Mask
, layoutHook = smartBorders (tiled ||| Mirror tiled ||| Full ||| tabbed shrinkText defaultTConf)
, keys = \c -> iddoKeys `M.union` keys defaultConfig c
}
where
tiled = Tall 1 (4/100) (1/2)
iddoKeys = M.fromList $
[ ((mod4Mask .|. shiftMask, xK_g ), gotoMenu)
, ((mod4Mask .|. shiftMask, xK_b ), bringMenu) ]