From 39cf1c8869bb6d4bc2553ba78433ef33df8316f0 Mon Sep 17 00:00:00 2001 From: Eric Mertens Date: Wed, 7 Nov 2007 06:58:05 +0100 Subject: DynamicLog: add ppOutput field to PP This allows the user to specify an alternate destination for logging output instead of outputing to stdout (which is still the default). darcs-hash:20071107055805-b49f3-c6ea1520a3c35f590b338e74b94f02762ec9593d.gz --- XMonad/Hooks/DynamicLog.hs | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'XMonad/Hooks/DynamicLog.hs') diff --git a/XMonad/Hooks/DynamicLog.hs b/XMonad/Hooks/DynamicLog.hs index 16f036a..96782fb 100644 --- a/XMonad/Hooks/DynamicLog.hs +++ b/XMonad/Hooks/DynamicLog.hs @@ -81,7 +81,7 @@ dynamicLogWithPP pp = do -- window title wt <- withWindowSet $ maybe (return "") (fmap show . getName) . S.peek - io . putStrLn . sepBy (ppSep pp) . ppOrder pp $ + io . ppOutput pp . sepBy (ppSep pp) . ppOrder pp $ [ ws , ppLayout pp ld , ppTitle pp wt @@ -171,7 +171,9 @@ data PP = PP { ppCurrent, ppVisible , ppSep, ppWsSep :: String , ppTitle :: String -> String , ppLayout :: String -> String - , ppOrder :: [String] -> [String] } + , ppOrder :: [String] -> [String] + , ppOutput :: String -> IO () + } -- | The default pretty printing options, as seen in dynamicLog defaultPP :: PP @@ -183,7 +185,9 @@ defaultPP = PP { ppCurrent = wrap "[" "]" , ppWsSep = " " , ppTitle = shorten 80 , ppLayout = id - , ppOrder = id } + , ppOrder = id + , ppOutput = putStrLn + } -- | Settings to emulate dwm's statusbar, dzen only dzenPP :: PP -- cgit v1.2.3