diff --git a/.config/xmobar/xmobarrc_hdmi b/.config/xmobar/xmobarrc_hdmi index 178ccef..6591d7f 100644 --- a/.config/xmobar/xmobarrc_hdmi +++ b/.config/xmobar/xmobarrc_hdmi @@ -2,7 +2,7 @@ Config { overrideRedirect = False , font = "Bitstream Vera Sans Mono Bold 9" , bgColor = "black" , fgColor = "#646464" - , position = TopW L 92 + , position = TopW L 93 , border = BottomB , borderColor = "#646464" , allDesktops = True diff --git a/.config/xmonad/xmonad.hs b/.config/xmonad/xmonad.hs index a48630d..199e214 100644 --- a/.config/xmonad/xmonad.hs +++ b/.config/xmonad/xmonad.hs @@ -1,20 +1,32 @@ +-- Import import XMonad +-- Hooks import XMonad.Hooks.DynamicLog import XMonad.Hooks.EwmhDesktops import XMonad.Hooks.InsertPosition import XMonad.Hooks.ManageHelpers import XMonad.Hooks.StatusBar import XMonad.Hooks.StatusBar.PP + +-- Layouts import XMonad.Layout.Grid +import XMonad.Layout.Spiral +import XMonad.Layout.Tabbed +import XMonad.Layout.ThreeColumns + +-- Layout modifiers +import XMonad.Layout.LayoutCombinators import XMonad.Layout.Magnifier import XMonad.Layout.Renamed -import XMonad.Layout.Spiral -import XMonad.Layout.ThreeColumns +import XMonad.Layout.ShowWName + +-- Util import XMonad.Util.EZConfig import XMonad.Util.Loggers import XMonad.Util.SpawnOnce +-- Main main :: IO () main = xmonad . ewmhFullscreen @@ -22,12 +34,14 @@ main = xmonad . withEasySB (xmobar1 <> xmobar2) defToggleStrutsKey $ myConfig +-- Config myConfig = def { modMask = mod4Mask , terminal = "kitty" + , workspaces = myWorkspaces , focusedBorderColor = "#006700" , normalBorderColor = "#000000" - , layoutHook = myLayout + , layoutHook = showWName myLayout , startupHook = myStartupHook , manageHook = myManageHook } @@ -35,20 +49,33 @@ myConfig = def [ ("M-S-l" , spawn "xscreensaver-command -lock" ) , ("M-v" , spawn "vivaldi" ) , ("M-" , unGrab *> spawn "gnome-screenshot -i" ) - , ("M-w" , spawn "passmenu -i" ) + , ("M-d" , spawn "dmenu_run" ) + , ("M-p" , spawn "passmenu -i" ) + , ("M-f" , sendMessage $ JumpToLayout "Tabbed" ) ] -myLayout = tiled ||| Mirror tiled ||| Full ||| threeCol ||| Grid ||| spiral(0.856) +-- Workspaces +myWorkspaces = [ "1:term", "2:www", "3:games", "4:msg" ] ++ map show [5..9] + +-- Layout +myLayout = tiled ||| Mirror tiled ||| myTabbed ||| threeCol ||| Grid ||| spiral(0.856) where threeCol = renamed [Replace "ThreeCol"] $ magnifiercz' 1.3 $ ThreeColMid nmaster delta ratio + myTabbed + = renamed [Replace "Tabbed"] + $ tabbed shrinkText myTabConfig + myTabConfig = def { activeColor = "#393939" + , inactiveColor = "#191b1c" + } tiled = Tall nmaster delta ratio nmaster = 1 ratio = 1/2 delta = 3/100 +-- Xmobar xmobar1 = statusBarProp "xmobar -x 0 ~/.config/xmobar/xmobarrc_laptop" (pure myXmobarPP) xmobar2 = statusBarProp "xmobar -x 1 ~/.config/xmobar/xmobarrc_hdmi" (pure myXmobarPP) @@ -78,13 +105,14 @@ myXmobarPP = def red = xmobarColor "#ff5555" "" lowWhite = xmobarColor "#bbbbbb" "" +-- Autostart myStartupHook :: X () myStartupHook = do spawnOnce "xsetroot -cursor_name left_ptr" spawnOnce "mons -e left && ~/.fehbg" spawnOnce "xscreensaver -no-splash" spawnOnce "trayer --edge top --align right --SetDockType true \ - \--SetPartialStrut true --expand true --width 8 \ + \--SetPartialStrut true --expand true --width 7 \ \--transparent true --tint 0x1f2022 --height 18 \ \--monitor 0" spawnOnce "redshift-gtk" @@ -94,9 +122,15 @@ myStartupHook = do spawnOnce "arch-audit-gtk" spawnOnce "xcompmgr" +-- Manage hook myManageHook :: ManageHook myManageHook = composeAll [ insertPosition End Newer + , className =? "kitty" --> doShift "1:term" + , className =? "Vivaldi-stable" --> doShift "2:www" + , className =? "steam" --> doShift "3:games" + , className =? "discord" --> doShift "4:msg" + , className =? "Signal" --> doShift "4:msg" , className =? "mpv" --> doFullFloat , className =? "Xviewer" --> doFloat , className =? "steam_app_109600" --> doFloat