summaryrefslogtreecommitdiff
path: root/lib/LogHook.hs
diff options
context:
space:
mode:
authortdback <tyler@tdback.net>2025-02-02 21:18:10 -0500
committertdback <tyler@tdback.net>2025-02-02 21:18:10 -0500
commit93f86940f52fde7a12073119fb9bf20edd4f3df9 (patch)
treed7b0b4247d27507b597c38b8651648756aa1f45a /lib/LogHook.hs
here be dragons
Diffstat (limited to 'lib/LogHook.hs')
-rw-r--r--lib/LogHook.hs30
1 files changed, 30 insertions, 0 deletions
diff --git a/lib/LogHook.hs b/lib/LogHook.hs
new file mode 100644
index 0000000..b10fba0
--- /dev/null
+++ b/lib/LogHook.hs
@@ -0,0 +1,30 @@
+module LogHook
+ ( myLogHook
+ , withStatusBars
+ ) where
+
+import Defaults
+import XMonad
+import XMonad.Hooks.DynamicLog
+import XMonad.Hooks.StatusBar
+import XMonad.Hooks.StatusBar.PP
+
+myLogHook :: X ()
+myLogHook = return ()
+
+withStatusBars :: (LayoutClass l Window) => XConfig l -> XConfig l
+withStatusBars = dynamicSBs barSpawner
+
+barSpawner :: ScreenId -> IO StatusBarConfig
+barSpawner = pure . xmobar
+ where
+ pp :: PP
+ pp =
+ def
+ { ppCurrent = xmobarColor "yellow" "" . wrap "[" "]"
+ , ppVisible = xmobarColor "white" "" . wrap "[" "]"
+ , ppUrgent = xmobarColor "red" "" . wrap "[" "]"
+ , ppOrder = \(ws:_:t:_) -> [ws, t]
+ }
+ xmobar :: ScreenId -> StatusBarConfig
+ xmobar (S screenId) = statusBarProp ("xmobar -x" <> show screenId) $ pure pp