aboutsummaryrefslogtreecommitdiff
path: root/xmonad.hs
diff options
context:
space:
mode:
Diffstat (limited to 'xmonad.hs')
-rw-r--r--xmonad.hs215
1 files changed, 0 insertions, 215 deletions
diff --git a/xmonad.hs b/xmonad.hs
deleted file mode 100644
index 319f61f5..00000000
--- a/xmonad.hs
+++ /dev/null
@@ -1,215 +0,0 @@
-import XMonad
-import qualified XMonad.StackSet as W
--- import XMonad hiding ((|||))
-
--- actions
-import XMonad.Actions.CycleWS (moveTo, shiftTo, WSType(..), nextScreen, prevScreen)
-import XMonad.Actions.CopyWindow
-import XMonad.Actions.CycleWS
-import XMonad.Actions.GridSelect
-import XMonad.Actions.SwapWorkspaces
-import XMonad.Actions.WindowBringer
-import XMonad.Actions.MouseResize
-
--- layouts modifiers
-import XMonad.Layout.Spacing
-import XMonad.Layout.LayoutModifier
-import XMonad.Layout.WindowNavigation as WN
-
--- Layouts
-import XMonad.Layout.AvoidFloats
-import XMonad.Layout.BinarySpacePartition as BSP
-import XMonad.Layout.CenteredMaster
-import XMonad.Layout.Grid
-import XMonad.Layout.ThreeColumns
-import XMonad.Layout.TwoPane
-import XMonad.Layout.Spiral
-import XMonad.Layout.ResizableTile
-import XMonad.Layout.Tabbed
-
--- hooks
-import XMonad.Hooks.SetWMName
-import XMonad.Hooks.ManageDocks
-import XMonad.Hooks.DynamicLog
-
--- utilities
-import XMonad.Util.SpawnOnce
-import XMonad.Util.EZConfig (additionalKeys)
-import XMonad.Util.Cursor
-import XMonad.Util.Paste
-import XMonad.Util.Run
-
-myStartupHook :: X ()
-myStartupHook = do
- spawnOnce "nitrogen --restore &"
- spawnOnce "picom &"
- spawnOnce "deadd-notification-center &"
- -- spawnOnce "firefox &"
- spawnOnce "sxhkd &"
- spawnOnce "betterlockscreen -l -t 'Welcome, Vidhu Kant!'"
- setWMName "AnimeTits&ThighsWM"
- setDefaultCursor xC_left_ptr
-
-
-
-
-
--- defaults
-
--- myFont :: String
--- myFont = "Roboto"
-
-myModMask :: KeyMask
-myModMask = mod4Mask
-
-myTerminal :: String
-myTerminal = "st"
-
-myDmenu :: String
-myDmenu = "run_dmenu"
-
-myBrowser :: String
-myBrowser = "firefox"
-
--- myEditor :: String
--- myEditor = "vim"
-
-
--- wm variables
-
-nBorder = "#1E1F29" -- "#3804f4" -- "#bf00ff"
-fBorder = "#FB027F"
-
-myBorderWidth = 2
-
-sGap = 3 -- screen gap
-wGap = 1 -- window gap
-
-myExtraWorkspaces = [(xK_0, "10")] -- ,(xK_minus, "tmp"),(xK_equal, "swap")]
-myWorkspaces = ["δΈ€","2","3","4","5","6","7","8", "9"] ++ (map snd myExtraWorkspaces)
-
-
--- keybindings
-myKeys = [
- ((mod4Mask, xK_Return), spawn (myTerminal ++ " -e fish"))
- , ((mod1Mask, xK_p), spawn "/home/zt/.config/scripts/run_dmenu")
- , ((mod1Mask, xK_w), kill1)
- , ((mod1Mask .|. shiftMask, xK_k), kill1)
- , ((mod1Mask, xK_o), withFocused $ windows . W.sink) -- unfloat windows
-
- -- view prev/next workspaces
- , ((mod1Mask, xK_h), prevWS)
- , ((mod1Mask, xK_l), nextWS)
-
- -- move to prev/next workspaces
- , ((mod1Mask .|. shiftMask, xK_h), shiftToPrev >> prevWS)
- , ((mod1Mask .|. shiftMask, xK_l), shiftToNext >> nextWS)
-
- -- modify gaps on runtime
- , ((mod1Mask, xK_equal), incWindowSpacing 1)
- , ((mod1Mask, xK_minus), decWindowSpacing 1)
- , ((mod1Mask .|. shiftMask, xK_equal), incScreenSpacing 1)
- , ((mod1Mask .|. shiftMask, xK_minus), decScreenSpacing 1)
-
- , ((mod4Mask .|. shiftMask, xK_Return), windows W.swapMaster) -- Swap the focused window and the master window
-
- -- these keybindings are for WindowNavigation
- -- and they conflict with BSP layout
-
- -- directional navigation of windows
- , ((mod4Mask, xK_l), sendMessage $ Go R)
- , ((mod4Mask, xK_h), sendMessage $ Go L)
- , ((mod4Mask, xK_k), sendMessage $ Go U)
- , ((mod4Mask, xK_j), sendMessage $ Go D)
-
- -- swap windows
- , ((mod4Mask .|. shiftMask, xK_l), sendMessage $ WN.Swap R)
- , ((mod4Mask .|. shiftMask, xK_h), sendMessage $ WN.Swap L)
- , ((mod4Mask .|. shiftMask, xK_k), sendMessage $ WN.Swap U)
- , ((mod4Mask .|. shiftMask, xK_j), sendMessage $ WN.Swap D)
-
- -- cycle through windows
- , ((mod1Mask, xK_j), windows W.focusDown)
- , ((mod1Mask, xK_k), windows W.focusUp)
-
- -- grid select
- , ((mod1Mask, xK_n), goToSelected defaultGSConfig)
-
- -- windowbringer
- , ((mod1Mask, xK_b), bringMenu)
- , ((mod1Mask, xK_g), gotoMenu)
-
- -- paste x selection
- , ((0, xK_Insert), pasteSelection)
-
- -- toggle bars
- , ((mod1Mask, xK_backslash), sendMessage ToggleStruts) -- toggle both bars
- , ((mod1Mask, xK_bracketleft), sendMessage $ ToggleStrut D) -- toggle bottom bar
- , ((mod1Mask, xK_bracketright), sendMessage $ ToggleStrut U) -- toggle top bar
-
- -- BSP layout keybindings
- -- resize
- , ((mod4Mask .|. mod1Mask, xK_l ), sendMessage $ ExpandTowards R)
- , ((mod4Mask .|. mod1Mask, xK_h ), sendMessage $ ExpandTowards L)
- , ((mod4Mask .|. mod1Mask, xK_j ), sendMessage $ ExpandTowards D)
- , ((mod4Mask .|. mod1Mask, xK_k ), sendMessage $ ExpandTowards U)
- , ((mod4Mask .|. mod1Mask .|. shiftMask , xK_l ), sendMessage $ ShrinkFrom R)
- , ((mod4Mask .|. mod1Mask .|. shiftMask , xK_h ), sendMessage $ ShrinkFrom L)
- , ((mod4Mask .|. mod1Mask .|. shiftMask , xK_j ), sendMessage $ ShrinkFrom D)
- , ((mod4Mask .|. mod1Mask .|. shiftMask , xK_k ), sendMessage $ ShrinkFrom U)
- -- other
- , ((mod1Mask, xK_r ), sendMessage Rotate)
- , ((mod1Mask, xK_s ), sendMessage BSP.Swap)
--- , ((mod4Mask .|. shiftMask .|. controlMask , xK_j ), sendMessage $ SplitShift Prev)
--- , ((mod4Mask .|. shiftMask .|. controlMask , xK_k ), sendMessage $ SplitShift Next)
-
-
-
- ] ++ [ -- for extra workspace(s)
- ((myModMask, key), (windows $ W.greedyView ws))
- | (key,ws) <- myExtraWorkspaces
- ] ++ [ -- also for extra workspaces
- ((myModMask .|. shiftMask, key), (windows $ W.shift ws))
- | (key,ws) <- myExtraWorkspaces
- ] ++ [ -- to swap workspaces
- ((mod4Mask .|. controlMask, k), windows $ swapWithCurrent i)
- | (i, k) <- zip myWorkspaces [xK_1 ..]
- ]
-
-
--- layouts
-myGap = spacingRaw False (Border sGap sGap sGap sGap) True (Border wGap wGap wGap wGap) True
-
-myLayouts = avoidStruts $ mouseResize $ windowNavigation $ myGap $ emptyBSP ||| ThreeColMid 1 (3/100) (1/2) ||| Grid ||| TwoPane (3/100) (1/2) ||| ThreeCol 1 (3/100) (1/2) ||| ThreeCol 2 (3/100) (1/2) ||| topRightMaster emptyBSP
-
-myLayoutHook = myLayouts
-
-
-myLemonbarPP = def {ppCurrent = wrap "" ""
- , ppHidden = wrap "" ""
- , ppHiddenNoWindows = wrap "" ""
- , ppTitle = wrap "" "" . shorten 60
- , ppSep = " "
- , ppUrgent = wrap "" ""
- , ppOrder = \(ws:l:t:ex) -> [ws,l]++ex++[t]
- }
-
-main = do
- bar <- spawnPipe "lemonbar -g 1366x21 -b -B '#171520' -p -F '#ffffff' -f 'Source Han Sans JP:size=10' -o -3 -f 'RobotoMono Nerd Font:style=Regular:size=15' -f -n 'mainbar' -o 0"
- xmonad $ docks def
- {
- terminal = myTerminal,
- focusFollowsMouse = True,
- borderWidth = myBorderWidth,
- modMask = myModMask,
- workspaces = myWorkspaces,
- normalBorderColor = nBorder,
- focusedBorderColor = fBorder,
- -- mouseBindings = myMouseBindings,
- layoutHook = myLayoutHook,
- -- manageHook = myManageHook,
- -- handleEventHook = myEventHook,
- logHook = dynamicLogWithPP myLemonbarPP { ppOutput = \x -> hPutStrLn bar x },
- startupHook = myStartupHook
-} `additionalKeys` myKeys
-