Homepage / Notes / Computer Science / Text editors / Emacs / Doom Emacs
Official repo: https://github.com/hlissner/doom-emacs
C-n
or C-j
nextC-p
or C-k
previousDoom
-esque commands:SPC b d/k
kill current bufferSPC b n
next bufferSPC b b
or SPC ,
list buffers in this workspaceSPC b B
or SPC <
list buffers across workspacesSPC b N
creates new bufferSPC b i
show ibuffer interfaceSPC b ...
command suggestionshttps://github.com/hlissner/evil-snipe
s [2 chars]
jump to next occurrence of [2 chars]
S [2 chars]
same as s
but backwards-lookingonce occurrence is found, can jump to the next one with s
, previous with S
https://github.com/abo-abo/avy
Similar to vim-easymotion
https://www.youtube.com/watch?v=zar4GsOBU0g&list=PLhXZp00uXBk4np17N39WvB80zgxlZfVwj&index=7
g s SPC [char]
jump to [char]g s s [2 chars]
jump to [2 chars]g s / [n chars]
jump to [n chars]https://github.com/hlissner/evil-multiedit
M-d
select word under cursor
M-d M-d
select word under cursor and select next occurrence as well
M-d M-D
select word under cursor and select previous occurrence as well
after a visual-mode selection was more, R
to select all occurrences
after matches are highlighted, move between them with C-n
for next, C-p
for previous
RET
to exclude or include a match in the selection
SPC s s
search buffer/current fileSPC s p
or SPC /
search entire projectC-w
and SPC w
interchangeable
vim
-esque commands:C-w v
vertical splitC-w s
horizontal splitC-w hjkl
for movementsC-w w
for next windowC-w =
to have an equal splitC-w q
to quit windowDoom
-esque commands:SPC w m m
maximize window (what I used vim-zoom for)SPC w ...
command suggestionsOfficial help: https://github.com/hlissner/doom-emacs/tree/master/modules/feature/workspaces
vim
-esque commands:gt
go to next workspacegT
go to previous workspaceDoom
-esque commands:SPC TAB 1
go to workspace #1SPC TAB n
new workspaceSPC TAB r
rename workspaceSPC TAB d
delete workspaceSPC TAB ...
otherSPC o E
open terminal in current windowSPC o e
toggle in small bottom windowSPC o T
open terminal in current window:vterm
or SPC o t
open terminal in new bottom window(Using projectile)
SPC p p
to open projectsSPC p t
list all todo for projectSPC p x
project-specific scratch buffer-
to go to parent directory+
create new directorym
to mark files/dirR
to rename file (this includes moving to a new directory)d
to delete, then x
to executeA git
client for Emacs!
SPC g g
magit statusTAB
to see more info, TAB
again to see diff
?
to see keybindingsb
(branch) to checkouts
to stage file, u
to unstagec
to commitp
to pushr
to rebasex
to discardC-c C-c
or ZZ
or :wq
to exit commit edit mode
Work with Git forges, such as Github and Gitlab, from the comfort of Magit and the rest of Emacs.
Create a .authinfo.gpg
file (Emacs seamlessly encrypts and decrypts .gpg
files!) in the home directory with this info (for GitHub): machine api.github.com login {username}^forge password {token}
@
to open Forge menuf y
to pullSPC n d
open Deft UI
https://github.com/hlissner/doom-snippets
On-the-fly syntax checking
SPC c x
show error list for current buffer
A debugger using lsp-mode
M-x dap-breakpoint-add
to add a breakpoint
M-x dap-breakpoint-log-message
to add a log message
M-x dap-debug
(or SPC o d
) to start debugging
M-x dap-hydra
shows handy keybindings
M-x dap-ui-expressions-add-prompt
(or SPC m d
) to add new expressions (specific values we want to watch)
M-x dap-ui-repl
to start a REPL within that debugging state
M-x dap-tooltip-at-point
to see the value of a variable
SPC c e
to evaluate buffer / region and display result in an overlay
https://github.com/hlissner/doom-emacs/issues/2134
zg
to +spell/add-wordzw
to +spell/remove-wordSPC m a
to align fields (have the CSV be displayed table/spreadsheet-style)
SPC m u
to reverse above (unalign)
SPC m s
to sort fields
SPC m k
to delete a column
SPC m t
to transpose file
Emacs Doom Episode 1 - Getting Started: https://www.youtube.com/watch?app=desktop&v=rCMh7srOqvw&list=PLhXZp00uXBk4np17N39WvB80zgxlZfVwj&index=2&t=0s
Commentary around config: https://zzamboni.org/post/my-doom-emacs-configuration-with-commentary/
Commentary around config #2: https://tecosaur.github.io/emacs-config/config.html
Google Calendar and org-mode
: https://cestlaz.github.io/posts/using-emacs-26-gcal