Doom Emacs for the Power User
Some indespensible resources that I used to learn and configure my Doom Emacs instance.
Miscโ
- Restarting the Emacs server:
emacsclient -e '(save-buffers-kill-emacs)'
SPC p k
: Kill all project buffersSPC p p
,SPC p a
,SPC p b
,SPC p f
SPC /
: Search within projectSPC TAB k
,M-[123]
: Workspace
Doom Emacs Cheat Sheetโ
This cheat sheet is especially useful for learning Doom Emacs. Lot's of cool tips and tricks!
Treemacsโ
Minor modesโ
- Indent-guide mode
- Git mode (Extended)
- Follow mode
Dired modeโ
Vimโ
I won't go in-detail, but here are some really useful mechanisms to look up in Vim (assuming familiarity with basic Vim fundementals):
- Markers
- Registers, specifically
C-r, "
- Multi-cursor replacement
:e!
: Reset all unsaved changes- Using
C-r, "
to paste from clipboard when in command mode, especially useful for using/
search gd
: Go to Definition (requires LSP)za
: Toggle folding
Complimentary Softwareโ
Vimiumโ
This is a browser extension that will allow you to use Vim hotkeys to navigate the browser, e.g.: (/, h, j, k, l, o, d, u)
Pro-tip: In the o
search menu, use C-j
or C-k
to navigate without using the arrow keys.
GitHub Copilotโ
alias ghask='gh copilot explain'
alias ghcmd='gh copilot suggest'
alias lg='lazygit'
i3wmโ
My config: https://github.com/voidranjer/dotfiles
Roadmapโ
Nixโ
I'm trying to solve the problem of sharing my org files as easily as a Google Doc โ M. Farabi
Emacs and Doom Emacs depend on a number of external packages. As well, if you plan on adding your own configurations that make use of external libraries, Nix helps with this.
Nix is a package manager with a completely different approach to package management (compared with the standards, like dpkg, dnf, the AUR, etc). I will not provide a whole argument for Nix here, but the tldr is: by packaging your Emacs config into a Nix package, it will work on virtually any Linux distro.
Pending Researchโ
- https://github.com/hlissner/evil-multiedit
- https://emacs-lsp.github.io/lsp-mode/
- https://github.com/copilot-emacs/copilot.el
- Org-mode
- Lisp
- Rust
- vterm
- browse-kill-ring or clipetty
- https://github.com/jscheid/prettier.el