Major edits to XMonad/Emacs in prep for DT's OS!
This commit is contained in:
parent
a52c88da3f
commit
f6fc3384d1
88
.Xresources
88
.Xresources
|
@ -66,89 +66,14 @@ URxvt.keysym.M-c: perl:clipboard:copy
|
|||
URxvt.keysym.M-v: perl:clipboard:paste
|
||||
URxvt*depth: 32
|
||||
|
||||
|
||||
! Palenight Xresources palette
|
||||
!! COLORS
|
||||
|
||||
!!URxvt*foreground: #bbc5ff
|
||||
!!URxvt*background: [95]#282a36
|
||||
!!URxvt*cursorColor: #bbc5ff
|
||||
!!
|
||||
!!XTerm*foreground: #bbc5ff
|
||||
!!XTerm*background: #282a36
|
||||
!!XTerm*cursorColor: #bbc5ff
|
||||
!!
|
||||
!!! black
|
||||
!!*.color0: #101010 !! originally #292d3e
|
||||
!!*.color8: #434758
|
||||
!!
|
||||
!!! red
|
||||
!!*.color1: #f07178
|
||||
!!*.color9: #ff8b92
|
||||
!!
|
||||
!!! green
|
||||
!!*.color2: #c3e88d
|
||||
!!*.color10: #ddffa7
|
||||
!!
|
||||
!!! yellow
|
||||
!!*.color3: #ffcb6b
|
||||
!!*.color11: #ffe585
|
||||
!!
|
||||
!!! blue
|
||||
!!*.color4: #82aaff
|
||||
!!*.color12: #9cc4ff
|
||||
!!
|
||||
!!! magenta
|
||||
!!*.color5: #c792ea
|
||||
!!*.color13: #e1acff
|
||||
!!
|
||||
!!! cyan
|
||||
!!*.color6: #89ddff
|
||||
!!*.color14: #a3f7ff
|
||||
!!
|
||||
!!! white
|
||||
!!*.color7: #d0d0d0
|
||||
!!*.color15: #ffffff
|
||||
!!! special
|
||||
!!*.foreground: #bbc2cf
|
||||
!!*.background: #282c34
|
||||
!!*.cursorColor: #bbc2cf
|
||||
!!
|
||||
!!! black
|
||||
!!*.color0: #1c1f24
|
||||
!!*.color8: #5b6268
|
||||
!!
|
||||
!!! red
|
||||
!!*.color1: #ff6c6b
|
||||
!!*.color9: #da8548
|
||||
!!
|
||||
!!! green
|
||||
!!*.color2: #98be65
|
||||
!!*.color10: #4db5bd
|
||||
!!
|
||||
!!! yellow
|
||||
!!*.color3: #da8548
|
||||
!!*.color11: #ecbe7b
|
||||
!!
|
||||
!!! blue
|
||||
!!*.color4: #51afef
|
||||
!!*.color12: #2257a0
|
||||
!!
|
||||
!!! magenta
|
||||
!!*.color5: #c678dd
|
||||
!!*.color13: #a9a1e1
|
||||
!!
|
||||
!!! cyan
|
||||
!!*.color6: #5699af
|
||||
!!*.color14: #46d9ff
|
||||
!!
|
||||
!!! white
|
||||
!!*.color7: #202328
|
||||
!!*.color15: #dfdfdf
|
||||
!!
|
||||
! COLORS FOR SXIV
|
||||
Sxiv.foreground: #bbc2cf
|
||||
Sxiv.background: #282c34
|
||||
Sxiv.font: Ubuntu:style=bold:size=11
|
||||
|
||||
|
||||
! special
|
||||
! FOR ALL OTHER PROGRAMS USE XRESOURCES
|
||||
! This includes xterm and urxvt
|
||||
*.foreground: #bbc2cf
|
||||
*.background: #282c34
|
||||
*.cursorColor: #bbc2cf
|
||||
|
@ -184,3 +109,4 @@ URxvt*depth: 32
|
|||
! white
|
||||
*.color7: #202328
|
||||
*.color15: #dfdfdf
|
||||
|
||||
|
|
|
@ -164,12 +164,12 @@ keys = [
|
|||
desc='Move down a section in treetab'
|
||||
),
|
||||
### Window controls
|
||||
Key([mod], "k",
|
||||
lazy.layout.up(),
|
||||
desc='Move focus down in current stack pane'
|
||||
),
|
||||
Key([mod], "j",
|
||||
lazy.layout.down(),
|
||||
desc='Move focus down in current stack pane'
|
||||
),
|
||||
Key([mod], "k",
|
||||
lazy.layout.up(),
|
||||
desc='Move focus up in current stack pane'
|
||||
),
|
||||
Key([mod, "shift"], "j",
|
||||
|
|
|
@ -76,12 +76,12 @@ keys = [
|
|||
desc='Move down a section in treetab'
|
||||
),
|
||||
### Window controls
|
||||
Key([mod], "k",
|
||||
lazy.layout.up(),
|
||||
desc='Move focus down in current stack pane'
|
||||
),
|
||||
Key([mod], "j",
|
||||
lazy.layout.down(),
|
||||
desc='Move focus down in current stack pane'
|
||||
),
|
||||
Key([mod], "k",
|
||||
lazy.layout.up(),
|
||||
desc='Move focus up in current stack pane'
|
||||
),
|
||||
Key([mod, "shift"], "j",
|
||||
|
|
|
@ -666,6 +666,8 @@ Emacs' default scrolling is annoying because of the sudden half-page jumps. Als
|
|||
#+end_src
|
||||
|
||||
* SHELLS
|
||||
In my configs, all of my shells (bash, fish, zsh and the ESHELL) require my shell-color-scripts-git package to be installed. On Arch Linux, you can install it from the AUR. Otherwise, go to my shell-color-scripts repository on GitLab to get it.
|
||||
|
||||
** Eshell
|
||||
Eshell is an Emacs 'shell' that is written in Elisp.
|
||||
|
||||
|
@ -676,6 +678,7 @@ Eshell is an Emacs 'shell' that is written in Elisp.
|
|||
#+end_src
|
||||
|
||||
+ 'eshell-syntax-highlighting' -- adds fish/zsh-like syntax highlighting.
|
||||
+ 'eshell-rc-script' -- your profile for eshell; like a bashrc for eshell.
|
||||
+ 'eshell-aliases-file' -- sets an aliases file for the eshell.
|
||||
|
||||
#+begin_src emacs-lisp
|
||||
|
@ -683,7 +686,9 @@ Eshell is an Emacs 'shell' that is written in Elisp.
|
|||
:after esh-mode
|
||||
:config
|
||||
(eshell-syntax-highlighting-global-mode +1))
|
||||
(setq eshell-aliases-file "~/.config/doom/aliases"
|
||||
|
||||
(setq eshell-rc-script (concat user-emacs-directory "eshell/profile")
|
||||
eshell-aliases-file (concat user-emacs-directory "eshell/aliases")
|
||||
eshell-history-size 5000
|
||||
eshell-buffer-maximum-lines 5000
|
||||
eshell-hist-ignoredups t
|
||||
|
|
|
@ -120,8 +120,11 @@ myTerminal = "alacritty" -- Sets default terminal
|
|||
myBrowser :: String
|
||||
myBrowser = "qutebrowser " -- Sets qutebrowser as browser
|
||||
|
||||
myEmacs :: String
|
||||
myEmacs = "emacsclient -c -a 'emacs' " -- Makes emacs keybindings easier to type
|
||||
|
||||
myEditor :: String
|
||||
myEditor = "emacsclient -c -a emacs " -- Sets emacs as editor
|
||||
myEditor = "emacsclient -c -a 'emacs' " -- Sets emacs as editor
|
||||
-- myEditor = myTerminal ++ " -e vim " -- Sets vim as editor
|
||||
|
||||
myBorderWidth :: Dimension
|
||||
|
@ -147,15 +150,17 @@ These are commands we want XMonad to execute on startup, such as running a compo
|
|||
myStartupHook :: X ()
|
||||
myStartupHook = do
|
||||
spawnOnce "lxsession &"
|
||||
spawnOnce "nitrogen --restore &"
|
||||
spawnOnce "~/.fehbg &" -- set last saved wallpaper
|
||||
-- spawnOnce "feh --randomize --bg-fill ~/wallpapers/*" -- set random wallpaper
|
||||
spawnOnce "picom &"
|
||||
spawnOnce "nm-applet &"
|
||||
spawnOnce "volumeicon &"
|
||||
spawnOnce "conky -c $HOME/.config/conky/xmonad.conkyrc"
|
||||
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
|
||||
-- spawnOnce "nitrogen --restore &" -- if you prefer nitrogen to feh for wallpaper setter
|
||||
setWMName "LG3D"
|
||||
#+END_SRC
|
||||
|
||||
|
@ -215,6 +220,7 @@ Allows to have several floating scratchpads running different applications. Imp
|
|||
myScratchPads :: [NamedScratchpad]
|
||||
myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm
|
||||
, NS "mocp" spawnMocp findMocp manageMocp
|
||||
, NS "calculator" spawnCalc findCalc manageCalc
|
||||
]
|
||||
where
|
||||
spawnTerm = myTerminal ++ " -t scratchpad"
|
||||
|
@ -232,7 +238,15 @@ myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm
|
|||
h = 0.9
|
||||
w = 0.9
|
||||
t = 0.95 -h
|
||||
l = 0.95 -w
|
||||
l = 0.95 -w
|
||||
spawnCalc = "qalculate-gtk"
|
||||
findCalc = className =? "Qalculate-gtk"
|
||||
manageCalc = customFloating $ W.RationalRect l t w h
|
||||
where
|
||||
h = 0.5
|
||||
w = 0.4
|
||||
t = 0.75 -h
|
||||
l = 0.70 -w
|
||||
#+END_SRC
|
||||
|
||||
* Layouts
|
||||
|
@ -357,7 +371,7 @@ I have made my workspaces in xmobar "clickable." Clickable workspaces means the
|
|||
|
||||
#+begin_src haskell
|
||||
-- myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "]
|
||||
myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "] -- ++ ["NSP"]
|
||||
myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "]
|
||||
myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
|
||||
|
||||
clickable ws = "<action=xdotool key super+"++show i++">"++ws++"</action>"
|
||||
|
@ -370,17 +384,28 @@ Sets some rules for certain programs. Examples include forcing certain programs
|
|||
#+BEGIN_SRC haskell
|
||||
myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
|
||||
myManageHook = composeAll
|
||||
-- 'doFloat' forces a window to float. Useful for dialog boxes and such.
|
||||
-- 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 be very long if using clickable workspaces.
|
||||
[ title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
|
||||
, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )
|
||||
, className =? "Gimp" --> doFloat
|
||||
, title =? "Oracle VM VirtualBox Manager" --> doFloat
|
||||
[ className =? "confirm" --> doFloat
|
||||
, className =? "file_progress" --> doFloat
|
||||
, className =? "dialog" --> doFloat
|
||||
, className =? "download" --> doFloat
|
||||
, className =? "error" --> doFloat
|
||||
, className =? "Gimp" --> doFloat
|
||||
, className =? "notification" --> doFloat
|
||||
, className =? "pinentry-gtk-2" --> doFloat
|
||||
, className =? "splash" --> doFloat
|
||||
, className =? "toolbar" --> doFloat
|
||||
, title =? "Oracle VM VirtualBox Manager" --> doFloat
|
||||
, title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "brave-browser" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "qutebrowser" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
|
||||
, className =? "VirtualBox Manager" --> doShift ( myWorkspaces !! 4 )
|
||||
, (className =? "firefox" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
|
||||
] <+> namedScratchpadManageHook myScratchPads
|
||||
] <+> namedScratchpadManageHook myScratchPads
|
||||
#+END_SRC
|
||||
|
||||
* Keybindings
|
||||
|
@ -503,14 +528,23 @@ myKeys =
|
|||
, ("M-C-k", sendMessage $ pullGroup U)
|
||||
, ("M-C-j", sendMessage $ pullGroup D)
|
||||
, ("M-C-m", withFocused (sendMessage . MergeAll))
|
||||
, ("M-C-u", withFocused (sendMessage . UnMerge))
|
||||
-- , ("M-C-u", withFocused (sendMessage . UnMerge))
|
||||
, ("M-C-/", withFocused (sendMessage . UnMergeAll))
|
||||
, ("M-C-.", onGroup W.focusUp') -- Switch focus to next tab
|
||||
, ("M-C-,", onGroup W.focusDown') -- Switch focus to prev tab
|
||||
|
||||
-- Scratchpads
|
||||
, ("M-C-<Return>", namedScratchpadAction myScratchPads "terminal")
|
||||
, ("M-C-c", namedScratchpadAction myScratchPads "mocp")
|
||||
-- Toggle show/hide these programs. They run on a hidden workspace.
|
||||
-- When you toggle them to show, it brings them to your current workspace.
|
||||
-- Toggle them to hide and it sends them back to hidden workspace (NSP).
|
||||
, ("C-s t", namedScratchpadAction myScratchPads "terminal")
|
||||
, ("C-s m", namedScratchpadAction myScratchPads "mocp")
|
||||
, ("C-s c", namedScratchpadAction myScratchPads "calculator")
|
||||
|
||||
-- Set wallpaper with 'feh'. Type 'SUPER+F1' to launch sxiv in the wallpapers directory.
|
||||
-- Then in sxiv, type 'C-x w' to set the wallpaper that you choose.
|
||||
, ("M-<F1>", spawn "sxiv -r -q -t -o ~/wallpapers/*")
|
||||
, ("M-<F2>", spawn "feh --randomize --bg-fill ~/wallpapers/*")
|
||||
|
||||
-- Controls for mocp music player (SUPER-u followed by a key)
|
||||
, ("M-u p", spawn "mocp --play")
|
||||
|
@ -519,18 +553,18 @@ myKeys =
|
|||
, ("M-u <Space>", spawn "mocp --toggle-pause")
|
||||
|
||||
-- Emacs (CTRL-e followed by a key)
|
||||
, ("C-e e", spawn "emacsclient -c -a 'emacs'") -- start emacs
|
||||
, ("C-e b", spawn "emacsclient -c -a 'emacs' --eval '(ibuffer)'") -- list emacs buffers
|
||||
, ("C-e d", spawn "emacsclient -c -a 'emacs' --eval '(dired nil)'") -- dired emacs file manager
|
||||
, ("C-e i", spawn "emacsclient -c -a 'emacs' --eval '(erc)'") -- erc emacs irc client
|
||||
, ("C-e m", spawn "emacsclient -c -a 'emacs' --eval '(mu4e)'") -- mu4e emacs email client
|
||||
, ("C-e n", spawn "emacsclient -c -a 'emacs' --eval '(elfeed)'") -- elfeed emacs rss client
|
||||
, ("C-e s", spawn "emacsclient -c -a 'emacs' --eval '(eshell)'") -- eshell within emacs
|
||||
, ("C-e t", spawn "emacsclient -c -a 'emacs' --eval '(mastodon)'") -- mastodon within emacs
|
||||
, ("C-e v", spawn "emacsclient -c -a 'emacs' --eval '(vterm nil)'") -- vterm within emacs
|
||||
, ("C-e w", spawn "emacsclient -c -a 'emacs' --eval '(eww \"distrotube.com\")'") -- vterm within emacs
|
||||
, ("C-e e", spawn myEmacs) -- start emacs
|
||||
, ("C-e b", spawn (myEmacs ++ ("--eval '(ibuffer)'"))) -- list buffers
|
||||
, ("C-e d", spawn (myEmacs ++ ("--eval '(dired nil)'"))) -- dired
|
||||
, ("C-e i", spawn (myEmacs ++ ("--eval '(erc)'"))) -- erc irc client
|
||||
, ("C-e m", spawn (myEmacs ++ ("--eval '(mu4e)'"))) -- mu4e email
|
||||
, ("C-e n", spawn (myEmacs ++ ("--eval '(elfeed)'"))) -- elfeed rss
|
||||
, ("C-e s", spawn (myEmacs ++ ("--eval '(eshell)'"))) -- eshell
|
||||
, ("C-e t", spawn (myEmacs ++ ("--eval '(mastodon)'"))) -- mastodon.el
|
||||
, ("C-e v", spawn (myEmacs ++ ("--eval '(vterm nil)'"))) -- vterm
|
||||
, ("C-e w", spawn (myEmacs ++ ("--eval '(eww \"distrotube.com\")'"))) -- eww browser
|
||||
-- emms is an emacs audio player. I set it to auto start playing in a specific directory.
|
||||
, ("C-e a", spawn "emacsclient -c -a 'emacs' --eval '(emms)' --eval '(emms-play-directory-tree \"~/Music/Non-Classical/70s-80s/\")'")
|
||||
, ("C-e a", spawn (myEmacs ++ ("--eval '(emms)' --eval '(emms-play-directory-tree \"~/Music/Non-Classical/70s-80s/\")'")))
|
||||
|
||||
-- Multimedia Keys
|
||||
, ("<XF86AudioPlay>", spawn (myTerminal ++ "mocp --play"))
|
||||
|
|
|
@ -80,8 +80,11 @@ myTerminal = "alacritty" -- Sets default terminal
|
|||
myBrowser :: String
|
||||
myBrowser = "qutebrowser " -- Sets qutebrowser as browser
|
||||
|
||||
myEmacs :: String
|
||||
myEmacs = "emacsclient -c -a 'emacs' " -- Makes emacs keybindings easier to type
|
||||
|
||||
myEditor :: String
|
||||
myEditor = "emacsclient -c -a emacs " -- Sets emacs as editor
|
||||
myEditor = "emacsclient -c -a 'emacs' " -- Sets emacs as editor
|
||||
-- myEditor = myTerminal ++ " -e vim " -- Sets vim as editor
|
||||
|
||||
myBorderWidth :: Dimension
|
||||
|
@ -102,15 +105,17 @@ windowCount = gets $ Just . show . length . W.integrate' . W.stack . W.workspace
|
|||
myStartupHook :: X ()
|
||||
myStartupHook = do
|
||||
spawnOnce "lxsession &"
|
||||
spawnOnce "nitrogen --restore &"
|
||||
spawnOnce "~/.fehbg &" -- set last saved wallpaper
|
||||
-- spawnOnce "feh --randomize --bg-fill ~/wallpapers/*" -- set random wallpaper
|
||||
spawnOnce "picom &"
|
||||
spawnOnce "nm-applet &"
|
||||
spawnOnce "volumeicon &"
|
||||
spawnOnce "conky -c $HOME/.config/conky/xmonad.conkyrc"
|
||||
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
|
||||
-- spawnOnce "nitrogen --restore &" -- if you prefer nitrogen to feh for wallpaper setter
|
||||
setWMName "LG3D"
|
||||
|
||||
myColorizer :: Window -> Bool -> X (String, String)
|
||||
|
@ -160,6 +165,7 @@ myAppGrid = [ ("Audacity", "audacity")
|
|||
myScratchPads :: [NamedScratchpad]
|
||||
myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm
|
||||
, NS "mocp" spawnMocp findMocp manageMocp
|
||||
, NS "calculator" spawnCalc findCalc manageCalc
|
||||
]
|
||||
where
|
||||
spawnTerm = myTerminal ++ " -t scratchpad"
|
||||
|
@ -177,7 +183,15 @@ myScratchPads = [ NS "terminal" spawnTerm findTerm manageTerm
|
|||
h = 0.9
|
||||
w = 0.9
|
||||
t = 0.95 -h
|
||||
l = 0.95 -w
|
||||
l = 0.95 -w
|
||||
spawnCalc = "qalculate-gtk"
|
||||
findCalc = className =? "Qalculate-gtk"
|
||||
manageCalc = customFloating $ W.RationalRect l t w h
|
||||
where
|
||||
h = 0.5
|
||||
w = 0.4
|
||||
t = 0.75 -h
|
||||
l = 0.70 -w
|
||||
|
||||
--Makes setting the spacingRaw simpler to write. The spacingRaw module adds a configurable amount of space around windows.
|
||||
mySpacing :: Integer -> l a -> XMonad.Layout.LayoutModifier.ModifiedLayout Spacing l a
|
||||
|
@ -292,7 +306,7 @@ myLayoutHook = avoidStruts $ mouseResize $ windowArrange $ T.toggleLayouts float
|
|||
||| threeRow
|
||||
|
||||
-- myWorkspaces = [" 1 ", " 2 ", " 3 ", " 4 ", " 5 ", " 6 ", " 7 ", " 8 ", " 9 "]
|
||||
myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "] -- ++ ["NSP"]
|
||||
myWorkspaces = [" dev ", " www ", " sys ", " doc ", " vbox ", " chat ", " mus ", " vid ", " gfx "]
|
||||
myWorkspaceIndices = M.fromList $ zipWith (,) myWorkspaces [1..] -- (,) == \x y -> (x,y)
|
||||
|
||||
clickable ws = "<action=xdotool key super+"++show i++">"++ws++"</action>"
|
||||
|
@ -300,14 +314,25 @@ clickable ws = "<action=xdotool key super+"++show i++">"++ws++"</action>"
|
|||
|
||||
myManageHook :: XMonad.Query (Data.Monoid.Endo WindowSet)
|
||||
myManageHook = composeAll
|
||||
-- 'doFloat' forces a window to float. Useful for dialog boxes and such.
|
||||
-- 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 be very long if using clickable workspaces.
|
||||
[ title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
|
||||
, className =? "Gimp" --> doShift ( myWorkspaces !! 8 )
|
||||
, className =? "Gimp" --> doFloat
|
||||
, title =? "Oracle VM VirtualBox Manager" --> doFloat
|
||||
[ className =? "confirm" --> doFloat
|
||||
, className =? "file_progress" --> doFloat
|
||||
, className =? "dialog" --> doFloat
|
||||
, className =? "download" --> doFloat
|
||||
, className =? "error" --> doFloat
|
||||
, className =? "Gimp" --> doFloat
|
||||
, className =? "notification" --> doFloat
|
||||
, className =? "pinentry-gtk-2" --> doFloat
|
||||
, className =? "splash" --> doFloat
|
||||
, className =? "toolbar" --> doFloat
|
||||
, title =? "Oracle VM VirtualBox Manager" --> doFloat
|
||||
, title =? "Mozilla Firefox" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "brave-browser" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "qutebrowser" --> doShift ( myWorkspaces !! 1 )
|
||||
, className =? "mpv" --> doShift ( myWorkspaces !! 7 )
|
||||
, className =? "VirtualBox Manager" --> doShift ( myWorkspaces !! 4 )
|
||||
, (className =? "firefox" <&&> resource =? "Dialog") --> doFloat -- Float Firefox Dialog
|
||||
] <+> namedScratchpadManageHook myScratchPads
|
||||
|
@ -403,14 +428,23 @@ myKeys =
|
|||
, ("M-C-k", sendMessage $ pullGroup U)
|
||||
, ("M-C-j", sendMessage $ pullGroup D)
|
||||
, ("M-C-m", withFocused (sendMessage . MergeAll))
|
||||
, ("M-C-u", withFocused (sendMessage . UnMerge))
|
||||
-- , ("M-C-u", withFocused (sendMessage . UnMerge))
|
||||
, ("M-C-/", withFocused (sendMessage . UnMergeAll))
|
||||
, ("M-C-.", onGroup W.focusUp') -- Switch focus to next tab
|
||||
, ("M-C-,", onGroup W.focusDown') -- Switch focus to prev tab
|
||||
|
||||
-- Scratchpads
|
||||
, ("M-C-<Return>", namedScratchpadAction myScratchPads "terminal")
|
||||
, ("M-C-c", namedScratchpadAction myScratchPads "mocp")
|
||||
-- Toggle show/hide these programs. They run on a hidden workspace.
|
||||
-- When you toggle them to show, it brings them to your current workspace.
|
||||
-- Toggle them to hide and it sends them back to hidden workspace (NSP).
|
||||
, ("C-s t", namedScratchpadAction myScratchPads "terminal")
|
||||
, ("C-s m", namedScratchpadAction myScratchPads "mocp")
|
||||
, ("C-s c", namedScratchpadAction myScratchPads "calculator")
|
||||
|
||||
-- Set wallpaper with 'feh'. Type 'SUPER+F1' to launch sxiv in the wallpapers directory.
|
||||
-- Then in sxiv, type 'C-x w' to set the wallpaper that you choose.
|
||||
, ("M-<F1>", spawn "sxiv -r -q -t -o ~/wallpapers/*")
|
||||
, ("M-<F2>", spawn "feh --randomize --bg-fill ~/wallpapers/*")
|
||||
|
||||
-- Controls for mocp music player (SUPER-u followed by a key)
|
||||
, ("M-u p", spawn "mocp --play")
|
||||
|
@ -419,18 +453,18 @@ myKeys =
|
|||
, ("M-u <Space>", spawn "mocp --toggle-pause")
|
||||
|
||||
-- Emacs (CTRL-e followed by a key)
|
||||
, ("C-e e", spawn "emacsclient -c -a 'emacs'") -- start emacs
|
||||
, ("C-e b", spawn "emacsclient -c -a 'emacs' --eval '(ibuffer)'") -- list emacs buffers
|
||||
, ("C-e d", spawn "emacsclient -c -a 'emacs' --eval '(dired nil)'") -- dired emacs file manager
|
||||
, ("C-e i", spawn "emacsclient -c -a 'emacs' --eval '(erc)'") -- erc emacs irc client
|
||||
, ("C-e m", spawn "emacsclient -c -a 'emacs' --eval '(mu4e)'") -- mu4e emacs email client
|
||||
, ("C-e n", spawn "emacsclient -c -a 'emacs' --eval '(elfeed)'") -- elfeed emacs rss client
|
||||
, ("C-e s", spawn "emacsclient -c -a 'emacs' --eval '(eshell)'") -- eshell within emacs
|
||||
, ("C-e t", spawn "emacsclient -c -a 'emacs' --eval '(mastodon)'") -- mastodon within emacs
|
||||
, ("C-e v", spawn "emacsclient -c -a 'emacs' --eval '(vterm nil)'") -- vterm within emacs
|
||||
, ("C-e w", spawn "emacsclient -c -a 'emacs' --eval '(eww \"distrotube.com\")'") -- vterm within emacs
|
||||
, ("C-e e", spawn myEmacs) -- start emacs
|
||||
, ("C-e b", spawn (myEmacs ++ ("--eval '(ibuffer)'"))) -- list buffers
|
||||
, ("C-e d", spawn (myEmacs ++ ("--eval '(dired nil)'"))) -- dired
|
||||
, ("C-e i", spawn (myEmacs ++ ("--eval '(erc)'"))) -- erc irc client
|
||||
, ("C-e m", spawn (myEmacs ++ ("--eval '(mu4e)'"))) -- mu4e email
|
||||
, ("C-e n", spawn (myEmacs ++ ("--eval '(elfeed)'"))) -- elfeed rss
|
||||
, ("C-e s", spawn (myEmacs ++ ("--eval '(eshell)'"))) -- eshell
|
||||
, ("C-e t", spawn (myEmacs ++ ("--eval '(mastodon)'"))) -- mastodon.el
|
||||
, ("C-e v", spawn (myEmacs ++ ("--eval '(vterm nil)'"))) -- vterm
|
||||
, ("C-e w", spawn (myEmacs ++ ("--eval '(eww \"distrotube.com\")'"))) -- eww browser
|
||||
-- emms is an emacs audio player. I set it to auto start playing in a specific directory.
|
||||
, ("C-e a", spawn "emacsclient -c -a 'emacs' --eval '(emms)' --eval '(emms-play-directory-tree \"~/Music/Non-Classical/70s-80s/\")'")
|
||||
, ("C-e a", spawn (myEmacs ++ ("--eval '(emms)' --eval '(emms-play-directory-tree \"~/Music/Non-Classical/70s-80s/\")'")))
|
||||
|
||||
-- Multimedia Keys
|
||||
, ("<XF86AudioPlay>", spawn (myTerminal ++ "mocp --play"))
|
||||
|
|
Loading…
Reference in New Issue