commit: 9614393bf1d122621b2ed0178f0a57915e9764a2
parent: 8b682389cca285b3e90f881a5473780070f236bd
Author: Haelwenn (lanodan) Monnier <contact@hacktivis.me>
Date: Tue, 1 Jan 2019 05:30:37 +0100
.xmonad/xmonad.hs: Update
Diffstat:
1 file changed, 53 insertions(+), 10 deletions(-)
diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs
@@ -1,12 +1,21 @@
import XMonad
import XMonad.Hooks.DynamicLog
-import XMonad.Hooks.EwmhDesktops
import XMonad.Hooks.ManageDocks
+import XMonad.Util.WorkspaceCompare -- getSortByXineramaPhysicalRule
+import XMonad.Util.EZConfig -- additionalKeys
+
+import XMonad.Prompt
+import XMonad.Prompt.XMonad -- xmonadPrompt
+import XMonad.Prompt.Pass -- passPrompt
+import XMonad.Prompt.Window -- windowPrompt
+import XMonad.Prompt.Shell
+import XMonad.StackSet (focusDown)
+
import XMonad.Layout.Grid
-myLayout = avoidStruts (tiled ||| Mirror tiled ||| Grid ||| Full) ||| Full
+myLayout = avoidStruts (Full ||| tiled ||| Mirror tiled ||| Grid )
where
tiled = Tall nmaster delta ratio
nmaster = 1
@@ -14,17 +23,51 @@ myLayout = avoidStruts (tiled ||| Mirror tiled ||| Grid ||| Full) ||| Full
delta = 3/100
myManageHook = composeAll
- [ className =? "QEMU" --> doFloat]
+ [ className =? "qemu-system-x86_64" --> doFloat
+ , className =? "st-256color" --> doShift "1"
+ , className =? "Navigator" --> doShift "2"
+ , className =? "Firefox" --> doShift "2" -- Theses fucking script popups
+ , className =? "mpv" --> doShift "3"
+ , className =? "ffplay" --> doShift "3"
+ --, isDialog --> doFloat
+ , className =? "Pidgin" --> doF focusDown
+ , className =? "Navigator" --> doF focusDown
+ , role =? "browser" --> doShift "2"
+ ]
+ where
+ role = stringProperty "WM_WINDOW_ROLE"
+
+promptConfig = defaultXPConfig
+ { font = "xft:monospace-10"
+ , borderColor = "#1e2320"
+ , fgColor = "#dddddd"
+ , bgColor = "#1e2320"
+ , fgHLight = "#ffffff"
+ , bgHLight = "#5f5f5f"
+ , height = 16
+ , position = Top
+ }
-main = xmonad $ ewmh defaultConfig
+main = xmonad $ docks $ def
{ borderWidth = 0
--- , normalBorderColor = "#002b36"
--- , focusedBorderColor = "#586e75"
, focusFollowsMouse = False
, clickJustFocuses = False
- , logHook = dynamicLogString xmobarPP { ppTitle = xmobarColor "green" "" } >>= xmonadPropLog
+ , logHook = dynamicLogString xmobarPP
+ { ppTitle = xmobarColor "green" ""
+ , ppVisible = wrap "[" "]"
+ , ppSort = getSortByXineramaPhysicalRule
+ } >>= xmonadPropLog
, modMask = mod4Mask
- , manageHook = manageDocks <+> myManageHook
+ , manageHook = manageHook def <+> myManageHook
, layoutHook = myLayout
- , handleEventHook = handleEventHook defaultConfig <+> fullscreenEventHook <+> docksEventHook
- , terminal = "st"}
+ , handleEventHook = handleEventHook def <+> docksEventHook
+ , terminal = "st"
+ }
+ `additionalKeys`
+ [ ((mod4Mask, xK_b), sendMessage ToggleStruts)
+ , ((mod4Mask .|. shiftMask, xK_x), xmonadPrompt promptConfig)
+ , ((mod4Mask .|. shiftMask, xK_p), passPrompt promptConfig)
+ , ((mod4Mask, xK_p), shellPrompt promptConfig)
+ , ((mod4Mask .|. shiftMask, xK_g ), windowPrompt promptConfig { autoComplete = Just 500000 } Goto allWindows)
+ , ((mod4Mask .|. shiftMask, xK_b ), windowPrompt promptConfig Bring allWindows)
+ ]