Compare commits

..

No commits in common. "master" and "d9a911e1950819ea1c126187ee2f0ef4250e17ac" have entirely different histories.

View file

@ -1,30 +1,12 @@
-- xmonad.hs --IMPORTS
-- 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.
--
import XMonad import XMonad
import Data.Monoid import Data.Monoid
import System.Exit import System.Exit
import Graphics.X11.ExtraTypes.XF86
import XMonad.Hooks.DynamicLog
import XMonad.Util.SpawnOnce import XMonad.Util.SpawnOnce
import XMonad.Util.Run import XMonad.Util.Run
import XMonad.Hooks.ManageDocks import XMonad.Hooks.ManageDocks
import XMonad.Hooks.EwmhDesktops import XMonad.Hooks.DynamicLog
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 qualified XMonad.StackSet as W import qualified XMonad.StackSet as W
import qualified Data.Map as M import qualified Data.Map as M
@ -77,14 +59,11 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
-- launch a terminal -- launch a terminal
[ ((modm .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf) [ ((modm .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf)
-- launch rofi -- launch dmenu
, ((modm .|. shiftMask, xK_d ), spawn "rofi -show drun") , ((modm, xK_p ), spawn "dmenu_run")
-- launch gmrun -- launch gmrun
, ((modm .|. shiftMask, xK_p ), spawn "gmrun") , ((modm .|. shiftMask, xK_p ), spawn "gmrun")
-- launch firefox
, ((modm .|. shiftMask, xK_f ), spawn "firefox")
-- close focused window -- close focused window
, ((modm .|. shiftMask, xK_q ), kill) , ((modm .|. shiftMask, xK_q ), kill)
@ -141,10 +120,10 @@ myKeys conf@(XConfig {XMonad.modMask = modm}) = M.fromList $
-- , ((modm , xK_b ), sendMessage ToggleStruts) -- , ((modm , xK_b ), sendMessage ToggleStruts)
-- Quit xmonad -- Quit xmonad
, ((modm, xK_x ), spawn "wlogout") -- ((modm .|. shiftMask, xK_q ), io (exitWith ExitSuccess))
-- Restart xmonad -- 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) -- Run xmessage with a summary of the default keybindings (useful for beginners)
, ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -")) , ((modm .|. shiftMask, xK_slash ), spawn ("echo \"" ++ help ++ "\" | xmessage -file -"))
@ -199,16 +178,19 @@ myMouseBindings (XConfig {XMonad.modMask = modm}) = M.fromList $
-- The available layouts. Note that each layout is separated by |||, -- The available layouts. Note that each layout is separated by |||,
-- which denotes layout choice. -- 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)] myLayout = avoidStruts (tiled ||| Mirror tiled ||| Full)
$ avoidStruts where
$ mkToggle (NBFULL ?? EOT) -- default tiling algorithm partitions the screen into two panes
$ smartBorders tiled = Tall nmaster delta ratio
$ tiled ||| Grid ||| spiral (6/7) ||| ThreeColMid 1 (3/100) (1/2) ||| noBorders Full
where -- The default number of windows in the master pane
tiled = Tall nmaster delta ratio nmaster = 1
nmaster = 1
delta = 3/100 -- Default proportion of screen occupied by master pane
ratio = 1/2 ratio = 1/2
-- Percent of screen to increment by when resizing panes
delta = 3/100
------------------------------------------------------------------------ ------------------------------------------------------------------------
-- Window rules: -- Window rules:
@ -240,7 +222,7 @@ myManageHook = composeAll
-- return (All True) if the default handler is to be run afterwards. To -- return (All True) if the default handler is to be run afterwards. To
-- combine event hooks use mappend or mconcat from Data.Monoid. -- combine event hooks use mappend or mconcat from Data.Monoid.
-- --
myEventHook = fullscreenEventHook myEventHook = mempty
------------------------------------------------------------------------ ------------------------------------------------------------------------
-- Status bars and logging -- Status bars and logging
@ -261,27 +243,18 @@ myLogHook = return ()
myStartupHook = do myStartupHook = do
spawnOnce "nitrogen --restore &" spawnOnce "nitrogen --restore &"
spawnOnce "picom &" 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. -- Now run xmonad with all the defaults we set up.
-- Run xmonad with the settings you specify. No need to modify this. -- Run xmonad with the settings you specify. No need to modify this.
-- --
main = do main = do
xmonad =<< statusBar myBar myPP toggleStrutsKey (ewmh defaults) { handleEventHook = xmproc <- spawnPipe "xmobar /home/mx/.config/xmobar/xmobarrc"
handleEventHook def <+> fullscreenEventHook }
xmonad defaults
-- A structure containing your configuration settings, overriding -- A structure containing your configuration settings, overriding
-- fields in the default config. Any you don't override, will -- fields in the default config. Any you don't override, will
-- use the defaults defined in xmonad/XMonad/Config.hs -- use the defaults defined in xmonad/XMonad/Config.hs