Major work on Emacs and XMonad configs.

This commit is contained in:
Derek Taylor
2021-04-18 19:36:50 -05:00
parent bab9cbc8b9
commit a52c88da3f
10 changed files with 293 additions and 64 deletions

View File

@@ -152,6 +152,7 @@ myStartupHook = do
spawnOnce "nm-applet &"
spawnOnce "volumeicon &"
spawnOnce "trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 1 --transparent true --alpha 0 --tint 0x282c34 --height 22 &"
spawnOnce "conky -c $HOME/.config/conky/chimera.conkyrc" -- emacs daemon for the emacsclient
spawnOnce "/usr/bin/emacs --daemon &" -- emacs daemon for the emacsclient
-- spawnOnce "kak -d -s mysession &" -- kakoune daemon for better performance
-- spawnOnce "urxvtd -q -o -f &" -- urxvt daemon for better performance
@@ -371,7 +372,7 @@ myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
myManageHook = composeAll
-- using 'doShift ( myWorkspaces !! 7)' sends program to workspace 8!
-- I'm doing it this way because otherwise I would have to write out the full
-- name of my workspaces, and the names would very long if using clickable workspaces.
-- name of my workspaces and the names would be very long if using clickable workspaces.
[ title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )
@@ -385,30 +386,30 @@ myManageHook = composeAll
* Keybindings
I am using the Xmonad.Util.EZConfig module which allows keybindings to be written in simpler, emacs-like format. The Super/Windows key is 'M' (the modkey). The ALT key is 'M1'. SHIFT is 'S' and CTR is 'C'.
| A FEW IMPORTANT KEYBINDINGS | ASSOCIATED ACTION |
|-----------------------------+----------------------------------------------------------------------|
| MODKEY + RETURN | opens terminal (alacritty is the terminal but can be easily changed) |
| MODKEY + SHIFT + RETURN | opens run launcher (XMonad's shell xprompt) |
| MODKEY + TAB | rotates through the available layouts |
| MODKEY + SPACE | toggles fullscreen on/off (useful for watching videos) |
| MODKEY + SHIFT + c | closes window with focus |
| MODKEY + SHIFT + r | restarts xmonad |
| MODKEY + SHIFT + q | quits xmonad |
| MODKEY + 1-9 | switch focus to workspace (1-9) |
| MODKEY + SHIFT + 1-9 | send focused window to workspace (1-9) |
| MODKEY + j | windows focus down (switches focus between windows in the stack) |
| MODKEY + k | windows focus up (switches focus between windows in the stack) |
| MODKEY + SHIFT + j | windows swap down (swap windows in the stack) |
| MODKEY + SHIFT + k | windows swap up (swap the windows in the stack) |
| MODKEY + h | shrink window (decreases window width) |
| MODKEY + l | expand window (increases window width) |
| MODKEY + w | switches focus to monitor 1 |
| MODKEY + e | switches focus to monitor 2 |
| MODKEY + r | switches focus to monitor 3 |
| MODKEY + period | switch focus to next monitor |
| MODKEY + comma | switch focus to prev monitor |
| MODKEY + SPACE | toggles fullscreen on/off (useful for watching videos) |
| MODKEY + t | force floating window back into tiling |
| A FEW KEYBINDINGS | ASSOCIATED ACTION |
|-------------------------+--------------------------------------------------------------|
| MODKEY + RETURN | opens terminal (alacritty) |
| MODKEY + SHIFT + RETURN | opens run launcher (dmenu) |
| MODKEY + TAB | rotates through the available layouts |
| MODKEY + SPACE | toggles fullscreen on/off (useful for watching videos) |
| MODKEY + SHIFT + c | closes window with focus |
| MODKEY + SHIFT + r | restarts xmonad |
| MODKEY + SHIFT + q | quits xmonad |
| MODKEY + 1-9 | switch focus to workspace (1-9) |
| MODKEY + SHIFT + 1-9 | send focused window to workspace (1-9) |
| MODKEY + j | windows focus down (switches focus between windows in stack) |
| MODKEY + k | windows focus up (switches focus between windows in stack) |
| MODKEY + SHIFT + j | windows swap down (swap windows in the stack) |
| MODKEY + SHIFT + k | windows swap up (swap the windows in the stack) |
| MODKEY + h | shrink window (decreases window width) |
| MODKEY + l | expand window (increases window width) |
| MODKEY + w | switches focus to monitor 1 |
| MODKEY + e | switches focus to monitor 2 |
| MODKEY + r | switches focus to monitor 3 |
| MODKEY + period | switch focus to next monitor |
| MODKEY + comma | switch focus to prev monitor |
| MODKEY + SPACE | toggles fullscreen on/off (useful for watching videos) |
| MODKEY + t | force floating window back into tiling |
#+BEGIN_SRC haskell
myKeys :: [(String, X ())]

View File

@@ -107,6 +107,7 @@ myStartupHook = do
spawnOnce "nm-applet &"
spawnOnce "volumeicon &"
spawnOnce "trayer --edge top --align right --widthtype request --padding 6 --SetDockType true --SetPartialStrut true --expand true --monitor 1 --transparent true --alpha 0 --tint 0x282c34 --height 22 &"
spawnOnce "conky -c $HOME/.config/conky/chimera.conkyrc" -- emacs daemon for the emacsclient
spawnOnce "/usr/bin/emacs --daemon &" -- emacs daemon for the emacsclient
-- spawnOnce "kak -d -s mysession &" -- kakoune daemon for better performance
-- spawnOnce "urxvtd -q -o -f &" -- urxvt daemon for better performance
@@ -301,7 +302,7 @@ myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
myManageHook = composeAll
-- using 'doShift ( myWorkspaces !! 7)' sends program to workspace 8!
-- I'm doing it this way because otherwise I would have to write out the full
-- name of my workspaces, and the names would very long if using clickable workspaces.
-- name of my workspaces and the names would be very long if using clickable workspaces.
[ title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )