From 9c464f9fa63a8fa81f095fad170fc23c17ec5f62 Mon Sep 17 00:00:00 2001 From: Don Stewart Date: Wed, 7 Nov 2007 19:31:07 +0100 Subject: add higher order 'dzen' function The intent is that: main darcs-hash:20071107183107-cba2c-9b30182c82b98ccb2bf41f7c574946cbcb1be95f.gz --- XMonad/Hooks/DynamicLog.hs | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) (limited to 'XMonad/Hooks/DynamicLog.hs') diff --git a/XMonad/Hooks/DynamicLog.hs b/XMonad/Hooks/DynamicLog.hs index 02fa34d..2164080 100644 --- a/XMonad/Hooks/DynamicLog.hs +++ b/XMonad/Hooks/DynamicLog.hs @@ -25,6 +25,7 @@ module XMonad.Hooks.DynamicLog ( dynamicLogDzen, dynamicLogWithPP, dynamicLogXinerama, + dzen, pprWindowSet, pprWindowSetXinerama, @@ -67,9 +68,31 @@ makeSimpleDzenConfig = do h <- spawnPipe "dzen2" return defaultConfig { defaultGaps = [(18,0,0,0)] - , logHook = dynamicLogWithPP defaultPP + , logHook = dynamicLogWithPP dzenPP { ppOutput = hPutStrLn h } } +-- | +-- +-- Run xmonad with a dzen status bar set to some nice defaults. Output +-- it taken fromthe dynamicLogWithPP hook. +-- +-- > main = dzen xmonad +-- +-- The intent is that the avove config file should provide a nice status +-- bar with minimal effort. +-- +dzen :: (XConfig -> IO ()) -> IO () +dzen f = do + h <- spawnPipe ("dzen2" ++ " " ++ flags) + f $ defaultConfig + { defaultGaps = [(18,0,0,0)] + , logHook = dynamicLogWithPP dzenPP + { ppOutput = hPutStrLn h } } + where + fg = "'#a8a3f7'" -- n.b quoting + bg = "'#3f3c6d'" + flags = "-e '' -w 400 -ta l -fg " ++ fg ++ " -bg " ++ bg + -- | -- An example log hook, print a status bar output to stdout, in the form: -- -- cgit v1.2.3