-- Base import XMonad import System.Exit import qualified XMonad.StackSet as W -- Actions import XMonad.Actions.CycleWS -- Hooks import XMonad.Hooks.EwmhDesktops -- Layouts import XMonad.Layout.ThreeColumns -- Layout modifiers import XMonad.Layout.Spacing import XMonad.Layout.Renamed -- Utilities import XMonad.Util.EZConfig (additionalKeysP) -- xmobar dependencies import XMonad.Hooks.DynamicLog import XMonad.Hooks.StatusBar import XMonad.Hooks.StatusBar.PP import XMonad.Util.Loggers -- | Configuration myTerminal = "wezterm" myModMask = mod4Mask myBorderWidth = 5 myNormalBorderColor = "#282828" myFocusedBorderColor = "#282828" myWorkspaces = ["code", "chat", "web", "games", "misc"] -- | Keybindings myKeys = -- launching and killing programs [ ("M-n" , spawn myTerminal ) -- %! Launch terminal , ("M-e" , spawn "dmenu_run" ) -- %! Launch dmenu , ("M-C-w" , kill ) -- %! Close the focused window -- layouts , ("M-" , sendMessage NextLayout ) -- %! Rotate through the available layout algorithms -- move focus up or down the window stack , ("M-" , windows W.focusDown ) -- %! Move focus to the next window , ("M-" , windows W.focusUp ) -- %! Move focus to the previous window , ("M-" , windows W.focusMaster ) -- %! Move focus to the master window -- modifying the window order , ("M-S-" , windows W.swapDown ) -- %! Swap the focused window with the next window , ("M-S-" , windows W.swapUp ) -- %! Swap the focused window with the previous window , ("M-S-" , windows W.swapMaster ) -- %! Swap the focused window with the master window -- resizing the master/slave ratio , ("M-" , sendMessage Expand ) -- %! Expand the master area , ("M-" , sendMessage Shrink ) -- %! Shrink the master area -- number of windows in the master area , ("M-S-" , sendMessage (IncMasterN 1) ) -- %! Increase the number of windows in the master area , ("M-S-", sendMessage (IncMasterN (-1)) ) -- %! Decrease the number of windows in the master area -- floating layer support , ("M-t" , withFocused $ windows . W.sink ) -- %! Push window back into tiling -- workspace navigation , ("M-" , moveTo Next hiddenWS ) -- %! Move focus to the next hidden workspace , ("M-" , moveTo Prev hiddenWS ) -- %! Move focus to the previous hidden workspace -- move window to workspace , ("M-S-" , shiftTo Next hiddenWS ) -- %! Move focused window to the next hidden workspace , ("M-S-