stow/xmonad/.xmonad/xmonad.hs

58 lines
1.8 KiB
Haskell
Raw Normal View History

2023-12-10 16:23:07 +00:00
import qualified Data.Map as M
import XMonad
import XMonad.Util.Run (spawnPipe)
import XMonad.Util.EZConfig (additionalKeysP)
import XMonad.Hooks.ManageDocks (avoidStruts, docks, manageDocks)
import XMonad.Hooks.EwmhDesktops
import XMonad.Layout.NoBorders
import XMonad.Layout.Spacing (spacing)
import XMonad.Layout.GridVariants (Grid(Grid))
import XMonad.Layout.ResizableTile
myModKey = mod4Mask
myTerminal = "st"
myBorderWidth = 1
myUnfocusedBorderColor = "#ffffff"
myFocusedBorderColor = "#00cd00"
myWorkspaces = map show [1..9]
-- TODO: Can this be moved down to nmaster etc. section?
tiled = spacing 12 $ ResizableTall 1 (1/100) (1/2) []
grid = spacing 12 $ Grid (16/10)
monocle = smartBorders (Full)
myLayout = myDefaultLayout
where myDefaultLayout = tiled ||| Mirror tiled ||| monocle
-- TODO: These don't seem used, see if we can remove/use them
-- Update: Examination of other xmonad.hs files seems to back up my suspicions
-- nmaster = 1
-- ratio = 1/2
-- delta = 1/100
myKeys =
[ ("M-a", sendMessage MirrorShrink)
, ("M-z", sendMessage MirrorExpand)
]
main = do
xmproc <- spawnPipe "xmobar -x 0 /home/viciouscirce/.config/xmobar/xmobarrc"
xmonad $ ewmh def
{ manageHook = manageDocks
--, handleEventHook = docks
, modMask = myModKey
, terminal = myTerminal
-- , startupHook = myStartupHook
-- , layoutHook = myLayoutHook
, workspaces = myWorkspaces
, borderWidth = myBorderWidth
, normalBorderColor = myUnfocusedBorderColor
, focusedBorderColor = myFocusedBorderColor
-- , logHook = workspaceHistoryHook <+> myLogHook <+> dynamicLogWithPP xmobarPP
-- { ppOutput =
-- }
}
--`additionalKeysP` myKeys