From f6fc3384d1823fa6a7b6dfc11cf8a71d5d1336e4 Mon Sep 17 00:00:00 2001 From: Derek Taylor Date: Mon, 19 Apr 2021 15:04:37 -0500 Subject: [PATCH] Major edits to XMonad/Emacs in prep for DT's OS! --- .Xresources | 88 ++++------------------------------------ .config/qtile/README.org | 8 ++-- .config/qtile/config.py | 8 ++-- .emacs.d/config.org | 7 +++- .xmonad/README.org | 84 ++++++++++++++++++++++++++------------ .xmonad/xmonad.hs | 82 ++++++++++++++++++++++++++----------- 6 files changed, 138 insertions(+), 139 deletions(-) diff --git a/.Xresources b/.Xresources index e703e86..426896c 100644 --- a/.Xresources +++ b/.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 + diff --git a/.config/qtile/README.org b/.config/qtile/README.org index b861f75..6cd24f2 100644 --- a/.config/qtile/README.org +++ b/.config/qtile/README.org @@ -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", diff --git a/.config/qtile/config.py b/.config/qtile/config.py index e91eb03..f368422 100644 --- a/.config/qtile/config.py +++ b/.config/qtile/config.py @@ -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", diff --git a/.emacs.d/config.org b/.emacs.d/config.org index 03b3e4a..17a992f 100644 --- a/.emacs.d/config.org +++ b/.emacs.d/config.org @@ -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 diff --git a/.xmonad/README.org b/.xmonad/README.org index 5fac815..023813a 100644 --- a/.xmonad/README.org +++ b/.xmonad/README.org @@ -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 = ""++ws++"" @@ -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-", 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-", spawn "sxiv -r -q -t -o ~/wallpapers/*") + , ("M-", 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 ", 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 , ("", spawn (myTerminal ++ "mocp --play")) diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs index 8c0d82b..18c016f 100644 --- a/.xmonad/xmonad.hs +++ b/.xmonad/xmonad.hs @@ -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 = ""++ws++"" @@ -300,14 +314,25 @@ clickable ws = ""++ws++"" 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-", 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-", spawn "sxiv -r -q -t -o ~/wallpapers/*") + , ("M-", 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 ", 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 , ("", spawn (myTerminal ++ "mocp --play"))