Skip to main content

Doom Emacs for the Power User

ยท 2 min read
James Y.
Author

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 buffers
  • SPC p p, SPC p a, SPC p b, SPC p f
  • SPC /: Search within project
  • SPC 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โ€‹