My Advice for Users Wanting To Switch to Emacs

2026-08-07 Fri

Table of Contents

Tags: [Emacs]

I'd like to present to you my newly made absolute guide to Emacs video.

It's around one and a half uh years long.

— Emerald McS. et al., PhD; Emacs User @ University of Texas Instruments

So… Emacs!

This article is meant as a practical path towards starting with Emacs. It's mainly targeted towards people who already use neovim.

I think this video should be kind of a mandatory watch for anyone who might be interested in trying out Emacs for real. Maybe it's too long if you just want to play around with org mode.

Disclaimer

The need to switch tools all the time is something that I notice more frequently than I would like. I used to do this as well. How do you think I landed on Emacs in the first place? My pipeline went more like Visual Studio Code → Neovim → DOOM Emacs → plain Emacs. And why did I do it in the first place? Well, I switched from neovim for the kanagawa.nvim theme. And I switched to Emacs for the tao theme. But what I found was much more interesting than either of these themes. I would advise to not do stuff like me, but I also had a bunch of free time in high school.

Emacs is probably not the next cool thing. But it could be for you, with some effort. Unless you are coming for something specific like org-mode, you're probably better off staying with your current setup. I guess there's nothing wrong with trying it out for a bit.

The above text is more of a TLDW for this video from Protesilaos about the mindset for switching to Emacs from a (n)vim + tmux worldview.

Evil mode and default binds

It's kind of implied for most people that, when they come from (n)vim into Emacs, they should try DOOM or evil-mode. I actually think that if you're going to be serious about learning it, you should play around with vanilla first. The reason why is pretty simple: if all you do is make Emacs into whatever you used before, you won't really "get it" (Relevant commentary about this point).

The smallest, but most important, piece of advice I received for jumping into vanilla Emacs was that basically all of the keybinds are bound with C-x and C-c. Everything else is either movement-related, or unbound and free to use. The convention in Emacs is to allow the user to bind their personal stuff to C-c {any single letter e.g. a for agenda}.

Resources

Tutorials

Protesilaos

The corner stone of my Emacs learning journey. I would say his videos are the most important part of my switch to vanilla Emacs from DOOM.

Distrotube

Mostly does videos on Linux, but he does have a sizable collection of videos on DOOM Emacs.

Emacs RSS Feeds/Websites

Video Skill Tree

These are mostly video tutorials/workflow demos. I have the websites/written media in the Resources section.

Beginner

How to learn

Coding Setup

The auto completion setup for programming has been the most confusing part of Emacs for me to understand. I think I only recently figured out my setup and got it to a state where it works that way I want it to. That's why this section is a bit more in-depth; hopefully the verbosity will dispel confusion.

LSP (Language Server Protocol)
  • Eglot ships built-in with Emacs 29+, so it's the path of least resistance. No extra package needed for basic LSP support.
  • PizzaTorque - Setting up Basedpyright LSP with Emacs Eglot — concrete walkthrough for Python, but the pattern generalizes to other languages
  • lsp-mode is the older, more feature-heavy alternative to Eglot. More configuration surface, more bells and whistles (better UI popups, more integrations out of the box), but also more to learn and more to break.
  • Mastering Emacs has solid deep-dive articles comparing Eglot and lsp-mode if you want to actually understand the trade-off.
Completion
  • corfu + cape - the minimal, Prot-adjacent completion-at-point UI. Pairs naturally if you're already using vertico/consult for minibuffer completion. This is the setup that I use
  • company-mode — the older, more "batteries included" completion framework. Bigger ecosystem of backends, heavier by default.
  • Pick one based on whether you want minimal (corfu) or maximal (company).
Project & Navigation
  • project.el ships built-in and covers project-wide search, find-file, and compile — often enough on its own without needing projectile.
  • projectile — the older third-party alternative, still widely used, more configuration knobs.
  • magit is the pinnacle of git interfaces, pretty much every version copies it. I haven't tried them so I don't know how they compare.
Syntax Highlighting

Tree-sitter is built into Emacs 29+ (the -ts-mode variants, e.g. python-ts-mode). Prefer these over the legacy modes when available.

"Advanced"

You don't actually have to be super advanced to learn from this, but it might be difficult. These are the more "esoteric" parts of Emacs, in my opinion.

Emacs Adjacent Content

  • Unironically, videos from Luke Smith about Unix tools1

Other Notable Packages

Themes

Editing

  • expand region
  • multiple-cursors

Org mode/Note taking

  • Org noter
  • Org Roam
  • Denote and friends There are a bunch of additions under the denote package family like denote-citar and denote-org.
  • Citar

Media

  • pdf-tools
  • EMMS
  • anki-editor

Conclusion

If you actually read/watch all of this and you found it helpful or need something else, please reach out. Also when you're super deep into the Emacs rabbit-hole you will find this video to be peak humor

Footnotes

1Emacs is can be thought of a ultra-customizable front end for the Unix command line (e.g. dired as an extension of ls/grep/find)