pavelp

Awesome Emacs configurations

Whenever I stumble upon Emacs configurations, I link them here, so over time the list grew quite large and deserves now a separate page.

Table of Contents

What makes Emacs different

First, let's link explanations what makes Emacs different.

Distributions / starter kits

Distributions grew popularity around 2015 starting with Spacemacs. Their promise "ready to use" Emacs configuration, preconfigured vim-keybindings for those coming from (Neo)Vim land (as I was), fast startup speed, "layer" system. I also felt into this trap with Spacemacs, but that's really a trap - instead of learning Emacs (which is huge), user need to learn starter kit concepts. Chances are they won't learn neither.

Also, Emacs kept up and included into standard package quality of life packages, like use-package, package-vc, which-key, transient, eglot, tree-sitter, so there's little reasons to use distributions in 2025.

Spacemacs

That was the configuration I started using Emacs with, based on the promise of using vim-keybindings. The biggest issue with Spacemacs is that it diverted greatly from vanilla Emacs so I didn't learn anything about Emacs nor willing to, eventually dropping it for IntelliJ Idea to work with Scala.

Doom Emacs

https://www.github.com/hlissner/doom-emacs

I've heard so many times that Doom distribution is great but didn't try myself since I went to homegrown configuration.

Claimed advantages over home-grown configuration:

  • Fast startup time - after using use-package more, this is not an issue. Also I rarely restart Emacs.
  • Layer system. I don't want that, I want to use use-package that's shipped with Emacs.
  • Uses straight.el - an alternative package system to built-in package.el, which sells itself as superior one. Since then it was superceded by progfolio/elpaca, but package.el was greatly improved in Emacs 29 and Emacs 30 by supporting checkout from git repositories with package-vc-install, so this no longer stands.
  • Use general.el for setting keybindings. General.el is must have for users of Evil. Since I moved from Evil to Meow I can use built-in Emacs functions to set keybindings, like keymap-set and understand how they work.

Prelude

Prelude (bbatsov/prelude) is an enhanced Emacs 25.1+ distribution that should make your experience with Emacs both more pleasant and more powerful. Author is Bozhidar Batsov, who is also an author of popular projectile.el and CIDER packages.

Scimax

scimax/scimax.org at master · jkitchin/scimax

Corgi

corgi-emacs/corgi: Unbundled Emacs configuration aimed at Clojure developers

Optimized for Clojure developers.

Crafted Emacs

SystemCrafters/crafted-emacs: A sensible base Emacs configuration., created in 2022 on YouTube stream by David Wilson.

On <2022-07-16 Sat> I was reading sources of Crafted Emacs and reading announcement of renaming the project at From Rational to Crafted Emacs — Bowmansarrow (nice blog design, btw).

Castlemacs

Castlemacs is the configuration where I started from before developing my own config. The best of it is mapping of macOS-specific keybindings for working with files and integration with OS clipboard.

Emacs Bedrock

<2023-09-06 Wed>

~protesilaos/basic-emacs

~protesilaos/basic-emacs is a starter config from Prot.

Configurations

Other lists of configurations

Thoughts? Leave a comment