Compare commits
No commits in common. "master" and "d9a911e1950819ea1c126187ee2f0ef4250e17ac" have entirely different histories.
master
...
d9a911e195
1 changed files with 27 additions and 54 deletions
65
xmonad.hs
65
xmonad.hs
|
@ -1,30 +1,12 @@
|
|||
-- xmonad.hs
|
||||
-- xmonad example config file.
|
||||
--
|
||||
-- A template showing all available configuration hooks,
|
||||
-- and how to override the defaults in your own xmonad.hs conf file.
|
||||
--
|
||||
-- Normally, you'd only override those defaults you care about.
|
||||
--
|
||||
--IMPORTS
|
||||
|
||||
import XMonad
|
||||
import Data.Monoid
|
||||
import System.Exit
|
||||
import Graphics.X11.ExtraTypes.XF86
|
||||
import XMonad.Hooks.DynamicLog
|
||||
import XMonad.Util.SpawnOnce
|
||||
import XMonad.Util.Run
|
||||
import XMonad.Hooks.ManageDocks
|
||||
import XMonad.Hooks.EwmhDesktops
|
||||
import XMonad.Layout.Gaps
|
||||
import XMonad.Layout.Spacing
|
||||
import XMonad.Layout.MultiToggle
|
||||
import XMonad.Layout.NoBorders
|
||||
import XMonad.Layout.ThreeColumns
|
||||
import XMonad.Layout.NoBorders
|
||||
import XMonad.Layout.MultiToggle.Instances
|
||||
import XMonad.Layout.Grid
|
||||
import XMonad.Layout.Spiral
|
||||
import XMonad.Hooks.DynamicLog
|
||||
|
||||
import qualified XMonad.StackSet as W
|
||||
import qualified Data.Map as M
|
||||
|
@ -77,15 +59,12 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
|
|||
-- launch a terminal
|
||||
[ ((modm .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf)
|
||||
|
||||
-- launch rofi
|
||||
, ((modm .|. shiftMask, xK_d ), spawn "rofi -show drun")
|
||||
-- launch dmenu
|
||||
, ((modm, xK_p ), spawn "dmenu_run")
|
||||
|
||||
-- launch gmrun
|
||||
, ((modm .|. shiftMask, xK_p ), spawn "gmrun")
|
||||
|
||||
-- launch firefox
|
||||
, ((modm .|. shiftMask, xK_f ), spawn "firefox")
|
||||
|
||||
-- close focused window
|
||||
, ((modm .|. shiftMask, xK_q ), kill)
|
||||
|
||||
|
@ -141,10 +120,10 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
|
|||
-- , ((modm , xK_b ), sendMessage ToggleStruts)
|
||||
|
||||
-- Quit xmonad
|
||||
, ((modm, xK_x ), spawn "wlogout")
|
||||
-- ((modm .|. shiftMask, xK_q ), io (exitWith ExitSuccess))
|
||||
|
||||
-- Restart xmonad
|
||||
, ((modm , xK_q ), spawn "killall xmobar; xmonad --recompile; xmonad --restart")
|
||||
, ((modm , xK_q ), spawn "xmonad --recompile; xmonad --restart")
|
||||
|
||||
-- Run xmessage with a summary of the default keybindings (useful for beginners)
|
||||
, ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
|
||||
|
@ -199,17 +178,20 @@ myMouseBindings (XConfig {XMonad.modMask = modm}) = M.fromList $
|
|||
-- The available layouts. Note that each layout is separated by |||,
|
||||
-- which denotes layout choice.
|
||||
--
|
||||
myLayout = spacingRaw True (Border 0 5 5 5) True (Border 5 5 5 5) True $ gaps [(U,5), (D,5), (R,5), (L,5)]
|
||||
$ avoidStruts
|
||||
$ mkToggle (NBFULL ?? EOT)
|
||||
$ smartBorders
|
||||
$ tiled ||| Grid ||| spiral (6/7) ||| ThreeColMid 1 (3/100) (1/2) ||| noBorders Full
|
||||
myLayout = avoidStruts (tiled ||| Mirror tiled ||| Full)
|
||||
where
|
||||
-- default tiling algorithm partitions the screen into two panes
|
||||
tiled = Tall nmaster delta ratio
|
||||
|
||||
-- The default number of windows in the master pane
|
||||
nmaster = 1
|
||||
delta = 3/100
|
||||
|
||||
-- Default proportion of screen occupied by master pane
|
||||
ratio = 1/2
|
||||
|
||||
-- Percent of screen to increment by when resizing panes
|
||||
delta = 3/100
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- Window rules:
|
||||
|
||||
|
@ -240,7 +222,7 @@ myManageHook = composeAll
|
|||
-- return (All True) if the default handler is to be run afterwards. To
|
||||
-- combine event hooks use mappend or mconcat from Data.Monoid.
|
||||
--
|
||||
myEventHook = fullscreenEventHook
|
||||
myEventHook = mempty
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- Status bars and logging
|
||||
|
@ -261,26 +243,17 @@ myLogHook = return ()
|
|||
myStartupHook = do
|
||||
spawnOnce "nitrogen --restore &"
|
||||
spawnOnce "picom &"
|
||||
spawnOnce "trayer --edge bottom --align left --widthtype request --heighttype request --SetDockType true --transparent true --alpha 255 --SetPartialStrut false --expand true &"
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- Command to launch the bar.
|
||||
myBar = "xmobar"
|
||||
|
||||
-- Custom PP, configure it as you like. It determines what is being written to the bar.
|
||||
myPP = xmobarPP { ppCurrent = xmobarColor "#429942" "" . wrap "<" ">" }
|
||||
|
||||
-- Key binding to toggle the gap for the bar.
|
||||
toggleStrutsKey XConfig {XMonad.modMask = modMask} = (modMask, xK_b)
|
||||
|
||||
------------------------------------------------------------------------
|
||||
-- Now run xmonad with all the defaults we set up.
|
||||
|
||||
-- Run xmonad with the settings you specify. No need to modify this.
|
||||
--
|
||||
main = do
|
||||
xmonad =<< statusBar myBar myPP toggleStrutsKey (ewmh defaults) { handleEventHook =
|
||||
handleEventHook def <+> fullscreenEventHook }
|
||||
xmproc <- spawnPipe "xmobar /home/mx/.config/xmobar/xmobarrc"
|
||||
|
||||
xmonad defaults
|
||||
|
||||
-- A structure containing your configuration settings, overriding
|
||||
-- fields in the default config. Any you don't override, will
|
||||
|
|
Loading…
Reference in a new issue