Include xmonad configuration
This commit is contained in:
parent
1d67d708b5
commit
c93ca6c37a
67
etc/xmonad.hs
Normal file
67
etc/xmonad.hs
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
import XMonad
|
||||||
|
import XMonad.Actions.CopyWindow
|
||||||
|
import XMonad.Actions.GridSelect
|
||||||
|
import XMonad.Hooks.SetWMName
|
||||||
|
import XMonad.Util.EZConfig
|
||||||
|
|
||||||
|
import qualified XMonad.StackSet as W
|
||||||
|
|
||||||
|
main = xmonad $ defaultConfig
|
||||||
|
{ terminal = "kitty"
|
||||||
|
, borderWidth = 0
|
||||||
|
, modMask = mod4Mask
|
||||||
|
, startupHook = startup
|
||||||
|
, manageHook = windowManage
|
||||||
|
, workspaces = [ "1:emacs", "2:web", "3", "4", "5", "6", "7", "8", "9" ]
|
||||||
|
} `additionalKeysP` keysP
|
||||||
|
|
||||||
|
startup = do
|
||||||
|
setWMName "LG3D"
|
||||||
|
spawn "xrandr --auto && xrandr --output DP-1.3 --above DP-2"
|
||||||
|
spawn "xsetroot -solid '#000000'"
|
||||||
|
spawn "xinput --disable $(xinput | grep -o 'Synaptics TouchPad.*id=[0-9]*' | cut -d '=' -f 2)"
|
||||||
|
spawn "xinput --set-prop 15 'Device Accel Constant Deceleration' 0.20"
|
||||||
|
spawn "xhost +local"
|
||||||
|
|
||||||
|
windowManage = composeAll
|
||||||
|
[ className =? "Emacs" --> doShift "1:emacs"
|
||||||
|
|
||||||
|
, role =? "browser" --> doShift "2:web"
|
||||||
|
|
||||||
|
, role =? "gimp- layer-new" --> doFloat
|
||||||
|
, role =? "gimp- color-selector" --> doFloat
|
||||||
|
, role =? "gimp- dock" --> doF W.focusDown
|
||||||
|
, role =? "gimp- toolbox" --> doF W.focusDown
|
||||||
|
, role =? "toolbox_window" --> doF W.focusDown
|
||||||
|
|
||||||
|
, className =? "Dunst" --> doF W.focusDown <+> doF copyToAll
|
||||||
|
]
|
||||||
|
where
|
||||||
|
role = stringProperty "WM_WINDOW_ROLE"
|
||||||
|
command = stringProperty "WM_COMMAND"
|
||||||
|
|
||||||
|
notifySend :: Integer -> String -> X ()
|
||||||
|
notifySend expireTime shellCommand = spawn
|
||||||
|
$ "DISPLAY=:0 notify-send -t " ++ show expireTime
|
||||||
|
++ " -h string:bgcolor:#000000 "
|
||||||
|
++ " \"$(" ++ shellCommand ++ ")\""
|
||||||
|
|
||||||
|
-- M - modMask, M1 - Alt, C - Control, S - Shift. Use xev.
|
||||||
|
keysP = [ ("M-l", spawn "i3lock -n -c 000000")
|
||||||
|
, ("<Print>", spawn "escrotum -Cs")
|
||||||
|
, ("<XF86MonBrightnessUp>", spawn "sudo light -A 3")
|
||||||
|
, ("<XF86MonBrightnessDown>", spawn "sudo light -U 3")
|
||||||
|
, ("<XF86AudioMute>", spawn "pulsemixer --toggle-mute")
|
||||||
|
, ("<XF86AudioLowerVolume>", spawn "pulsemixer --change-volume -3")
|
||||||
|
, ("<XF86AudioRaiseVolume>", spawn "pulsemixer --change-volume +3")
|
||||||
|
, ("M-d", notifySend 3000 "date")
|
||||||
|
, ("M-p", spawn "rofi -theme android_notification -font 'Ubuntu Mono 30' -show run")
|
||||||
|
, ("M-g", goToSelected defaultGSConfig)
|
||||||
|
, ("M-s", spawn "kitty")
|
||||||
|
, ("M-b", notifySend 1000 "acpi -b")
|
||||||
|
]
|
||||||
|
++
|
||||||
|
[ (mask ++ "M-" ++ [key], screenWorkspace scr >>= flip whenJust (windows . action))
|
||||||
|
| (key, scr) <- zip "wer" [1,0,0] -- was [0..] *** change to match your screen order ***
|
||||||
|
, (action, mask) <- [ (W.view, "") , (W.shift, "S-")]
|
||||||
|
]
|
@ -21,5 +21,8 @@ in {
|
|||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
home-manager.users.user.home.file.".emacs.d/init.el".source = ./etc/emacs.el;
|
home-manager.users.user.home.file = {
|
||||||
|
".emacs.d/init.el".source = ./etc/emacs.el;
|
||||||
|
".xmonad/xmonad.hs".source = ./etc/xmonad.hs;
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user