From c32bbccd00aee2d6709253c8175c81d0072ee4b5 Mon Sep 17 00:00:00 2001
From: Vidhu Kant Sharma <vidhukant@protonmail.ch>
Date: Fri, 20 May 2022 23:10:49 +0530
Subject: applied keybindings and defaults

---
 .config/XMonad/lib/Defaults.hi    | Bin 0 -> 4140 bytes
 .config/XMonad/lib/Defaults.hs    |  43 ++++++++-----
 .config/XMonad/lib/Defaults.o     | Bin 0 -> 21968 bytes
 .config/XMonad/lib/Hooks.hi       | Bin 0 -> 3798 bytes
 .config/XMonad/lib/Hooks.hs       |   3 +-
 .config/XMonad/lib/Hooks.o        | Bin 0 -> 29480 bytes
 .config/XMonad/lib/Keybindings.hi | Bin 0 -> 4694 bytes
 .config/XMonad/lib/Keybindings.hs | 125 ++++++++++++++++++++------------------
 .config/XMonad/lib/Keybindings.o  | Bin 0 -> 98352 bytes
 .config/XMonad/lib/Scratchpads.hi | Bin 0 -> 2507 bytes
 .config/XMonad/lib/Scratchpads.hs |  67 +++++---------------
 .config/XMonad/lib/Scratchpads.o  | Bin 0 -> 73552 bytes
 12 files changed, 111 insertions(+), 127 deletions(-)
 create mode 100644 .config/XMonad/lib/Defaults.hi
 create mode 100644 .config/XMonad/lib/Defaults.o
 create mode 100644 .config/XMonad/lib/Hooks.hi
 create mode 100644 .config/XMonad/lib/Hooks.o
 create mode 100644 .config/XMonad/lib/Keybindings.hi
 create mode 100644 .config/XMonad/lib/Keybindings.o
 create mode 100644 .config/XMonad/lib/Scratchpads.hi
 create mode 100644 .config/XMonad/lib/Scratchpads.o

(limited to '.config/XMonad/lib')

diff --git a/.config/XMonad/lib/Defaults.hi b/.config/XMonad/lib/Defaults.hi
new file mode 100644
index 0000000..c8569d3
Binary files /dev/null and b/.config/XMonad/lib/Defaults.hi differ
diff --git a/.config/XMonad/lib/Defaults.hs b/.config/XMonad/lib/Defaults.hs
index 34d81e9..8d12f3c 100644
--- a/.config/XMonad/lib/Defaults.hs
+++ b/.config/XMonad/lib/Defaults.hs
@@ -4,24 +4,37 @@ import XMonad
 import XMonad.Layout.Spacing
 import XMonad.Layout.Tabbed
 
--- variables
-myModMask = mod4Mask 
-altMask = mod1Mask
-myLockscreen = "notify-send 'to be set up!' 'to be set up!'"
-myColorPicker = "colorpicker --short --one-shot --preview | xsel -b"
-myFont = "xft:Sauce Code Pro:style=Regular:size=14"
-volUp = "pamixer -i 5"
-volDown = "pamixer -d 5"
-volMute = "pamixer -t"
-backlightUp = "brightnessctl s +5"
-backlightDown = "brightnessctl s 5-"
-screenshot = "flameshot screen"
-fullScreenshot = "flameshot full"
-customScreenshot = "flameshot gui"
+myBorder          = "#120F23"
+myBorder'         = "#C44CF2"
+
+myBorderWidth     :: Dimension
+myBorderWidth     = 2
+
+myFont            = "xft:Sauce Code Pro:style=Regular:size=14"
+
+myModMask         = mod4Mask
+myModMask'        = mod1Mask
+
+myLockscreen      = "notify-send 'to be set up!' 'to be set up!'"
+myColorPicker     = "colorpicker --short --one-shot --preview | xsel -b"
+
+myTerminal        = "open_terminal"
+myTerminal'       = "alacritty"
+
+volUp             = "pamixer -i 5"
+volDown           = "pamixer -d 5"
+volMute           = "pamixer -t"
+
+backlightUp       = "brightnessctl s +5"
+backlightDown     = "brightnessctl s 5-"
+
+screenshot        = "flameshot screen"
+fullScreenshot    = "flameshot full"
+customScreenshot  = "flameshot gui"
 
 -- workspaces
 myExtraWorkspaces = [(xK_0, "十")] -- , (xK_comma, "  十一  "), (xK_period, "  十二  "), (xK_slash, "  十三  ")]
-myWorkspaces = ["一", "二", "三", "四", "五", "六", "七", "八", "九"] ++ map snd myExtraWorkspaces
+myWorkspaces      = ["一", "二", "三", "四", "五", "六", "七", "八", "九"] ++ map snd myExtraWorkspaces
 
 -- screen gaps
 sGap = 4
diff --git a/.config/XMonad/lib/Defaults.o b/.config/XMonad/lib/Defaults.o
new file mode 100644
index 0000000..02b9289
Binary files /dev/null and b/.config/XMonad/lib/Defaults.o differ
diff --git a/.config/XMonad/lib/Hooks.hi b/.config/XMonad/lib/Hooks.hi
new file mode 100644
index 0000000..8173f5f
Binary files /dev/null and b/.config/XMonad/lib/Hooks.hi differ
diff --git a/.config/XMonad/lib/Hooks.hs b/.config/XMonad/lib/Hooks.hs
index 858737d..45eb6e0 100644
--- a/.config/XMonad/lib/Hooks.hs
+++ b/.config/XMonad/lib/Hooks.hs
@@ -27,9 +27,8 @@ myManageHook = namedScratchpadManageHook myScratchpads
     , className =? "vlc"       --> doShift ( myWorkspaces !! 6 )
   ]
 
-myLayoutHook = avoidStruts $ maximize $ windowNavigation $ smartBorders $ myGap $ (
+myLayoutHook = avoidStruts $ maximize $ windowNavigation $ smartBorders $ myGap $
     emptyBSP ||| tabbed shrinkText myTabTheme ||| Grid
-  )
 
 myStartupHook = do
   spawnOnce "xmodmap /home/zt/.Xmodmap"
diff --git a/.config/XMonad/lib/Hooks.o b/.config/XMonad/lib/Hooks.o
new file mode 100644
index 0000000..4dfa76f
Binary files /dev/null and b/.config/XMonad/lib/Hooks.o differ
diff --git a/.config/XMonad/lib/Keybindings.hi b/.config/XMonad/lib/Keybindings.hi
new file mode 100644
index 0000000..90f098a
Binary files /dev/null and b/.config/XMonad/lib/Keybindings.hi differ
diff --git a/.config/XMonad/lib/Keybindings.hs b/.config/XMonad/lib/Keybindings.hs
index b92fc97..184e7f9 100644
--- a/.config/XMonad/lib/Keybindings.hs
+++ b/.config/XMonad/lib/Keybindings.hs
@@ -2,7 +2,6 @@ module Keybindings where
 
 import XMonad
 import qualified XMonad.StackSet as W
-import XMonad.ManageHook
 import System.Exit
 import System.IO
 
@@ -49,18 +48,26 @@ import XMonad.Util.NamedScratchpad
 import Defaults
 import Scratchpads
 
-
+myMouseKeybindings :: [((ButtonMask, Button), Window -> X ())]
 myMouseKeybindings = [
     ((myModMask, 4), \w -> prevWS)
     , ((myModMask, 5), \w -> nextWS)
   ]
 
+myKeybindings :: [((KeyMask, KeySym), X ())]
 myKeybindings = [
-    ((myModMask, xK_Return), spawn ("open_terminal"))
+    ((myModMask, xK_Return), spawn myTerminal)
     , ((myModMask .|. shiftMask, xK_q), kill1)
 
+    -- scratchpads
+    , ((myModMask, xK_u), myScratchpad "Term 0")
+    , ((myModMask, xK_i), myScratchpad "Term 1")
+    , ((myModMask, xK_o), myScratchpad "Term 2")
+    , ((myModMask, xK_p), myScratchpad "Term 3")
+
+
     -- volume keys , ((myModMask, xK_equal), spawn volUp)
-    , ((myModMask, xK_minus), spawn volDown)
+    , ((myModMask, xK_minus),     spawn volDown)
     , ((myModMask, xK_BackSpace), spawn volMute)
 
     -- brightness keys
@@ -68,50 +75,55 @@ myKeybindings = [
     , ((myModMask .|. shiftMask, xK_minus), spawn backlightDown)
 
     -- modify gaps on runtime
-    , ((myModMask, xK_F2), incWindowSpacing 1)
-    , ((myModMask, xK_F1), decWindowSpacing 1)
+    , ((myModMask,               xK_F2), incWindowSpacing 1)
+    , ((myModMask,               xK_F1), decWindowSpacing 1)
     , ((myModMask .|. shiftMask, xK_F2), incScreenSpacing 1)
     , ((myModMask .|. shiftMask, xK_F1), decScreenSpacing 1)
 
     -- view prev/next workspaces
-    , ((myModMask .|. shiftMask, xK_Tab), prevWS)
-    , ((myModMask, xK_Tab), nextWS)
-    , ((myModMask, xK_semicolon),  prevWS)
-    , ((myModMask, xK_apostrophe), nextWS)
-    , ((altMask, xK_h), prevWS)
-    , ((altMask, xK_l), nextWS)
+    , ((myModMask .|. shiftMask, xK_Tab       ), prevWS)
+    , ((myModMask,               xK_Tab       ), nextWS)
+    , ((myModMask,               xK_semicolon ), prevWS)
+    , ((myModMask,               xK_apostrophe), nextWS)
+    , ((myModMask',              xK_h         ), prevWS)
+    , ((myModMask',              xK_l         ), nextWS)
 
     -- move to prev/next workspaces
-    , ((altMask .|. shiftMask, xK_h), shiftToPrev >> prevWS)
-    , ((altMask .|. shiftMask, xK_l), shiftToNext >> nextWS)
-    , ((myModMask .|. shiftMask, xK_semicolon),  shiftToPrev >> prevWS)
-    , ((myModMask .|. shiftMask, xK_apostrophe), shiftToNext >> nextWS)
+    , ((myModMask' .|. shiftMask, xK_h         ), shiftToPrev >> prevWS)
+    , ((myModMask' .|. shiftMask, xK_l         ), shiftToNext >> nextWS)
+    , ((myModMask  .|. shiftMask, xK_semicolon ), shiftToPrev >> prevWS)
+    , ((myModMask  .|. shiftMask, xK_apostrophe), shiftToNext >> nextWS)
 
     -- focus previous/next monitor
-    , ((myModMask,               xK_bracketleft),   prevScreen)
-    , ((myModMask,               xK_bracketright),  nextScreen)
+    , ((myModMask, xK_bracketleft ), prevScreen)
+    , ((myModMask, xK_bracketright), nextScreen)
 
     -- move window to previous/next monitor
-    , ((myModMask .|. shiftMask, xK_bracketleft),   shiftPrevScreen >> prevScreen)
-    , ((myModMask .|. shiftMask, xK_bracketright),  shiftNextScreen >> nextScreen)
+    , ((myModMask .|. shiftMask, xK_bracketleft ), shiftPrevScreen >> prevScreen)
+    , ((myModMask .|. shiftMask, xK_bracketright), shiftNextScreen >> nextScreen)
 
     -- swap different screens
-    , ((myModMask .|. controlMask, xK_bracketleft),  swapPrevScreen)
+    , ((myModMask .|. controlMask, xK_bracketleft ), swapPrevScreen)
     , ((myModMask .|. controlMask, xK_bracketright), swapNextScreen)
 
-    , ((myModMask, xK_a), sendMessage ToggleStruts) -- toggle both bars
-    , ((myModMask, xK_f), withFocused (sendMessage . maximizeRestore)) -- toggle maximize
-    , ((myModMask .|. shiftMask, xK_f), withFocused $ windows . W.sink) -- unfloat windows
+    -- toggle both bars
+    , ((myModMask, xK_a), sendMessage ToggleStruts)
+
+    -- toggle maximize
+    , ((myModMask, xK_f), withFocused (sendMessage . maximizeRestore))
+
+    -- unfloat windows
+    , ((myModMask .|. shiftMask, xK_f), withFocused $ windows . W.sink)
 
     -- cycle through windows
-    , ((altMask, xK_j), windows W.focusDown)
-    , ((altMask, xK_k), windows W.focusUp)
+    , ((myModMask', xK_j), windows W.focusDown)
+    , ((myModMask', xK_k), windows W.focusUp)
 
     -- 2D navigation
-    , ((myModMask,                 xK_l), sendMessage $ Go R)
-    , ((myModMask,                 xK_h), sendMessage $ Go L)
-    , ((myModMask,                 xK_k), sendMessage $ Go U)
-    , ((myModMask,                 xK_j), sendMessage $ Go D)
+    , ((myModMask,               xK_l), sendMessage $ Go R)
+    , ((myModMask,               xK_h), sendMessage $ Go L)
+    , ((myModMask,               xK_k), sendMessage $ Go U)
+    , ((myModMask,               xK_j), sendMessage $ Go D)
 
     -- swap windows
     , ((myModMask .|. shiftMask, xK_l), sendMessage $ WN.Swap R)
@@ -120,51 +132,48 @@ myKeybindings = [
     , ((myModMask .|. shiftMask, xK_j), sendMessage $ WN.Swap D)
 
     -- resize
-    , ((myModMask .|. mod1Mask,                  xK_l  ), sendMessage $ ExpandTowards R)
-    , ((myModMask .|. mod1Mask,                  xK_h  ), sendMessage $ ExpandTowards L)
-    , ((myModMask .|. mod1Mask,                  xK_j  ), sendMessage $ ExpandTowards D)
-    , ((myModMask .|. mod1Mask,                  xK_k  ), sendMessage $ ExpandTowards U)
-    , ((myModMask .|. mod1Mask .|. shiftMask ,   xK_l  ), sendMessage $ ShrinkFrom R)
-    , ((myModMask .|. mod1Mask .|. shiftMask ,   xK_h  ), sendMessage $ ShrinkFrom L)
-    , ((myModMask .|. mod1Mask .|. shiftMask ,   xK_j  ), sendMessage $ ShrinkFrom D)
-    , ((myModMask .|. mod1Mask .|. shiftMask ,   xK_k  ), sendMessage $ ShrinkFrom U)
+    , ((myModMask .|. mod1Mask,                 xK_l), sendMessage $ ExpandTowards R)
+    , ((myModMask .|. mod1Mask,                 xK_h), sendMessage $ ExpandTowards L)
+    , ((myModMask .|. mod1Mask,                 xK_j), sendMessage $ ExpandTowards D)
+    , ((myModMask .|. mod1Mask,                 xK_k), sendMessage $ ExpandTowards U)
+    , ((myModMask .|. mod1Mask .|. shiftMask,   xK_l), sendMessage $ ShrinkFrom R)
+    , ((myModMask .|. mod1Mask .|. shiftMask,   xK_h), sendMessage $ ShrinkFrom L)
+    , ((myModMask .|. mod1Mask .|. shiftMask,   xK_j), sendMessage $ ShrinkFrom D)
+    , ((myModMask .|. mod1Mask .|. shiftMask,   xK_k), sendMessage $ ShrinkFrom U)
 
   ] ++ [ -- for extra workspace(s)
-    ((myModMask, key), (windows $ W.greedyView ws))
+    ((myModMask, key), windows $ W.greedyView ws)
     | (key,ws) <- myExtraWorkspaces
   ] ++ [ -- also for extra workspaces
-    ((myModMask .|. shiftMask, key), (windows $ W.shift ws))
+    ((myModMask .|. shiftMask, key), windows $ W.shift ws)
     | (key,ws) <- myExtraWorkspaces
   ] ++ [ -- to swap workspace
     ((mod1Mask .|. shiftMask, k), windows $ swapWithCurrent i)
     | (i, k) <- zip myWorkspaces [xK_1, xK_2, xK_3, xK_4, xK_5, xK_6, xK_7, xK_8, xK_9, xK_0]
   ] ++ [ -- copy
     ((m .|. myModMask, k), windows $ f i)
-    | (i, k) <- zip (myWorkspaces) [xK_1, xK_2, xK_3, xK_4, xK_5, xK_6, xK_7, xK_8, xK_9, xK_0]
-    , (f, m) <- [(copy, shiftMask .|. altMask)]
+    | (i, k) <- zip myWorkspaces [xK_1, xK_2, xK_3, xK_4, xK_5, xK_6, xK_7, xK_8, xK_9, xK_0]
+    , (f, m) <- [(copy, shiftMask .|. myModMask')]
   ] ++ [ -- for not swapping tags while using multihead
     ((m .|. myModMask, k), windows $ f i)
     | (i, k) <- zip myWorkspaces [xK_1, xK_2, xK_3, xK_4, xK_5, xK_6, xK_7, xK_8, xK_9, xK_0]
     , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]
   ]
 
+myKeybindingsP :: [(String, X())]
 myKeybindingsP = [
     -- fn keys
-    -- ("<XF86MonBrightnessUp>",   spawn backlightUp)
-    -- , ("<XF86MonBrightnessDown>", spawn backlightDown)
-    -- , ("<XF86AudioRaiseVolume>",  spawn volUp)
-    -- , ("<XF86AudioLowerVolume>",  spawn volDown)
-    -- , ("<XF86AudioMute>",         spawn volMute)
-    -- ("M-S-p", spawn "dmenu_run")
+    ("<XF86MonBrightnessUp>",     spawn backlightUp)
+    , ("<XF86MonBrightnessDown>", spawn backlightDown)
+    , ("<XF86AudioRaiseVolume>",  spawn volUp)
+    , ("<XF86AudioLowerVolume>",  spawn volDown)
+    , ("<XF86AudioMute>",         spawn volMute)
+    , ("M-S-p", spawn "dmenu_run")
     -- scratchpads
-    -- , ("M-r",   namedScratchpadAction myScratchpads "Term 0")
-    -- , ("M-t",   namedScratchpadAction myScratchpads "Term 1")
-    -- , ("M-y",   namedScratchpadAction myScratchpads "Term 2")
-    -- , ("M-u",   namedScratchpadAction myScratchpads "Term 3")
-    -- , ("M-m",   namedScratchpadAction myScratchpads "BPYTOP")
-    -- , ("M-S-m", namedScratchpadAction myScratchpads "calc")
-    -- , ("M-n",   namedScratchpadAction myScratchpads "pavucontrol")
-    -- , ("M-S-n", namedScratchpadAction myScratchpads "arandr")
-    -- , ("M-b",   namedScratchpadAction myScratchpads "blueman")
-    -- , ("M-S-r", namedScratchpadAction myScratchpads "wallpaper")
+    , ("M-m",   namedScratchpadAction myScratchpads "BPYTOP")
+    , ("M-S-m", namedScratchpadAction myScratchpads "calc")
+    , ("M-n",   namedScratchpadAction myScratchpads "pavucontrol")
+    , ("M-S-n", namedScratchpadAction myScratchpads "arandr")
+    , ("M-b",   namedScratchpadAction myScratchpads "blueman")
+    , ("M-S-r", namedScratchpadAction myScratchpads "wallpaper")
   ]
diff --git a/.config/XMonad/lib/Keybindings.o b/.config/XMonad/lib/Keybindings.o
new file mode 100644
index 0000000..c342e42
Binary files /dev/null and b/.config/XMonad/lib/Keybindings.o differ
diff --git a/.config/XMonad/lib/Scratchpads.hi b/.config/XMonad/lib/Scratchpads.hi
new file mode 100644
index 0000000..667b8c8
Binary files /dev/null and b/.config/XMonad/lib/Scratchpads.hi differ
diff --git a/.config/XMonad/lib/Scratchpads.hs b/.config/XMonad/lib/Scratchpads.hs
index 8422e48..5fb8952 100644
--- a/.config/XMonad/lib/Scratchpads.hs
+++ b/.config/XMonad/lib/Scratchpads.hs
@@ -1,60 +1,23 @@
 module Scratchpads where
+
 import XMonad
 import qualified XMonad.StackSet as W
-import XMonad.ManageHook
-import System.Exit
-import System.IO
-
--- data
-import Data.Tree
-import qualified Data.Map as M
-
--- actions
-import XMonad.Actions.CopyWindow
-import XMonad.Actions.CycleWS
-import XMonad.Actions.GridSelect
-import XMonad.Actions.SwapWorkspaces
-import qualified XMonad.Actions.TreeSelect as TS
-
--- layout modifiers
-import XMonad.Layout.Spacing
-import XMonad.Layout.WindowNavigation as WN
-import XMonad.Layout.Maximize
-import XMonad.Layout.Fullscreen
-import XMonad.Layout.NoBorders
-
--- Layouts
-import XMonad.Layout.BinarySpacePartition as BSP
-import XMonad.Layout.Grid
-import XMonad.Layout.Tabbed
-
--- hooks
-import XMonad.Hooks.SetWMName
-import XMonad.Hooks.ManageDocks
-import XMonad.Hooks.EwmhDesktops
-
-import XMonad.Hooks.DynamicLog
--- DynamicLog replacement(s)
--- import XMonad.Hooks.StatusBar
--- import XMonad.Hooks.StatusBar.PP
-
--- utilities
-import XMonad.Util.Run
-import XMonad.Util.SpawnOnce
-import XMonad.Util.EZConfig
-import XMonad.Util.Cursor
 import XMonad.Util.NamedScratchpad
 
+-- open a scratchpad
+myScratchpad :: String -> X ()
+myScratchpad x = namedScratchpadAction myScratchpads x
+
 myScratchpads =
-  [ NS "Term 0"      "alacritty -t 'Term 0'"     (title     =? "Term 0") (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
-  , NS "Term 1"      "alacritty -t 'Term 1'"     (title     =? "Term 1") (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
-  , NS "Term 2"      "alacritty -t 'Term 2'"     (title     =? "Term 2") (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
-  , NS "Term 3"      "alacritty -t 'Term 3'"     (title     =? "Term 3") (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
-  , NS "lf"          "alacritty -t 'lf' -e 'lf'" (title     =? "lf")     (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
-  , NS "arandr"      "arandr"                    (className =? "Arandr") (customFloating $ W.RationalRect (1/4) (1/4) (1/2) (1/2))
-  , NS "calc"        "galculator"                (className =? "Galculator")      (customFloating $ W.RationalRect (5/13) (4/13) (3/13) (6/13))
+  [ NS "Term 0"      "alacritty -t 'Term 0'"     (title     =? "Term 0")          (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
+  , NS "Term 1"      "alacritty -t 'Term 1'"     (title     =? "Term 1")          (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
+  , NS "Term 2"      "alacritty -t 'Term 2'"     (title     =? "Term 2")          (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
+  , NS "Term 3"      "alacritty -t 'Term 3'"     (title     =? "Term 3")          (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
+  , NS "lf"          "alacritty -t 'lf' -e 'lf'" (title     =? "lf")              (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
+  , NS "arandr"      "arandr"                    (className =? "Arandr")          (customFloating $ W.RationalRect (1/4)    (1/4)  (1/2)  (1/2))
+  , NS "calc"        "galculator"                (className =? "Galculator")      (customFloating $ W.RationalRect (5/13)   (4/13) (3/13) (6/13))
   , NS "blueman"     "blueman-manager"           (className =? "Blueman-manager") (customFloating $ W.RationalRect (5.5/16) (4/13) (5/16) (6/13))
-  , NS "pavucontrol" "pavucontrol"               (className =? "Pavucontrol")     (customFloating $ W.RationalRect (3/12) (1/12) (3/6) (5/6))
-  , NS "wallpaper"   "nitrogen"                  (className =? "Nitrogen")        (customFloating $ W.RationalRect (3/12) (1/12) (3/6) (5/6))
-  , NS "BPYTOP" "alacritty -t 'BPYTOP' -e 'bpytop'"  (title =? "BPYTOP")          (customFloating $ W.RationalRect (1/16) (1/16) (7/8) (7/8))
+  , NS "pavucontrol" "pavucontrol"               (className =? "Pavucontrol")     (customFloating $ W.RationalRect (3/12)   (1/12) (3/6)  (5/6))
+  , NS "wallpaper"   "nitrogen"                  (className =? "Nitrogen")        (customFloating $ W.RationalRect (3/12)   (1/12) (3/6)  (5/6))
+  , NS "BPYTOP" "alacritty -t 'BPYTOP' -e 'bpytop'"  (title =? "BPYTOP")          (customFloating $ W.RationalRect (1/16)   (1/16) (7/8)  (7/8))
   ]
diff --git a/.config/XMonad/lib/Scratchpads.o b/.config/XMonad/lib/Scratchpads.o
new file mode 100644
index 0000000..c582a58
Binary files /dev/null and b/.config/XMonad/lib/Scratchpads.o differ
-- 
cgit v1.2.3