dotfiles/xmonad/xmonad.hs

43 lines
1.3 KiB
Haskell

import XMonad
import XMonad.Hooks.DynamicLog
import XMonad.Hooks.EwmhDesktops
import XMonad.Util.EZConfig
import XMonad.Util.Loggers
import XMonad.Util.Ungrab
main :: IO ()
main = xmonad
. ewmh
=<< statusBar "xmobar" myXmobarPP toggleStrutsKey myConfig
where
toggleStrutsKey :: XConfig Layout -> (KeyMask, KeySym)
toggleStrutsKey XConfig{ modMask = m } = (m, xK_b)
myConfig = def
{ borderWidth = 4
, terminal = "xterm"
, modMask = mod4Mask
, focusedBorderColor = "#ff00ff"
}
myXmobarPP :: PP
myXmobarPP = def
{ ppSep = magenta ""
, ppTitle = shorten 32
, ppTitleSanitize = xmobarStrip
, ppCurrent = wrap (mediumblue "[") (mediumblue "]")
, ppHidden = midnightblue . wrap " " ""
, ppHiddenNoWindows = teal . wrap " " ""
, ppUrgent = red . wrap (red "!") (red "!")
}
where
midnightblue, mediumblue, magenta, red, white, yellow, teal :: String -> String
midnightblue = xmobarColor "#191970" ""
mediumblue = xmobarColor "#0000cd" ""
magenta = xmobarColor "#ff79c6" ""
white = xmobarColor "#f8f8f2" ""
yellow = xmobarColor "#f1fa8c" ""
red = xmobarColor "#ff5555" ""
teal = xmobarColor "#008080" ""