Xmonad/Config archive/nattfodd's xmonad.hs
From HaskellWiki
< Xmonad | Config archive
import XMonad import XMonad.Layout import XMonad.Operations import XMonad.Hooks.DynamicLog import XMonad.Hooks.ManageDocks import qualified Data.Map as M import Graphics.X11 import qualified XMonad.StackSet as W import Data.Bits ((.|.)) import Data.Ratio ((%)) import System.IO -- XMonadContrib -- import XMonad.Util.Dzen import XMonad.Layout.NoBorders import XMonad.Hooks.UrgencyHook import XMonad.Util.EZConfig import XMonad.Util.Run main = do h <- spawnPipe ("dzen2" ++ " " ++ flags) xmonad $ defaultConfig { workspaces = workspaces' , layoutHook = layoutHook' , manageHook = manageDocks <+> manageHook defaultConfig , terminal = "/home/heimdall/scripts/urxvt" , normalBorderColor = "#dddddd" , logHook = dynamicLogWithPP defaultPP { ppOutput = hPutStrLn h } , focusedBorderColor = "#aa0000" } `additionalKeys` keys' where fg = "'grey70'" bg = "'#2c2c32'" fn = "'-*-profont-*-*-*-*-12-*-*-*-*-*-*'" flags = "-e '' -w 600 -ta l -fg " ++ fg ++ " -bg " ++ bg ++ " -fn " ++ fn layoutHook' = layout'-- $ withUrgencyHook dzenUrgencyHook { args = ["-bg", "darkgreen", "-xs", "1"] } layout' = avoidStruts (smartBorders (tiled ||| Mirror tiled ||| Full)) where tiled = Tall nmaster delta ratio nmaster = 1 -- The default number of windows in the master pane ratio = 2%3 -- Default proportion of screen occupied by master pane delta = 5%100 -- Percent of screen to increment by when resizing panes keys' = [((m .|. mod1Mask, k), windows $ f i) | (i, k) <- zip workspaces' [0x26,0xe9,0x22,0x27,0x28,0x2d,0xe8,0x5f,0xe7,0xe0,xK_a,xK_z,xK_e,xK_r] , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]] ++ [((mod1Mask , 0x3b), sendMessage (IncMasterN (-1)))]-- %! Deincrement the number of windows in the master area ++ [((mod1Mask , xK_b), sendMessage ToggleStruts)] -- Launch xmonad with the following: -- -- #!/bin/sh -- -- FG='grey70' -- BG='#2c2c32' -- FONT='-*-profont-*-*-*-*-12-*-*-*-*-*-*' -- -- while (true); do ~/scripts/weather.pl; done & -- xmonad-acpi | dzen2 -e '' -x 600 -w 768 -ta r -fg $FG -bg $BG -fn $FONT & -- xmonad & -- -- wait $! -- pkill -HUP dzen2 -- pkill -HUP -f xmonad-acpi -- wait
