An Apostate Comes Home

Over at the Emacs subreddit, g_tb has come back to Emacs after trying Neovim, Kate, Helix, and VSCode. None of them met his needs as well as Emacs so he’s back to the one true editor™. Of them all, VSCode came closest to meeting his needs but he’s justifiably suspicious of Microsoft and, apparently, VSCode has different keybindings on Linux, Windows, and the Mac.

Reading between the lines, I infer that his problem with Emacs is that you have to “build your own editor”. It’s a complaint that I see a lot: “I don’t want to have configure everything myself. I just want it to work out-of-the-box.”

Of course, there are solutions. At the simple end, you can use one of the prebuilt configurations like Steve Purcell’s Emacs config. But these configurations usually have a point of view, which may or may not mesh with your desired workflow.

At the high end, there are solutions like Spacemacs and Doom Emacs that do provide an out-of-the-box solution. The problem with them is that everything goes into the box so that the result is bloated and possibly slower. Doomers and Spacemacsers will object that you can configure them to include only the functionality you need but then you’re back to the original problem of building your own editor.

The best solution, I think, is what I did. The TL;DR is to follow the advice that everyone gives for Org mode: do one thing at a time. When I started Emacs, I didn’t have a master plan or even know what I was doing. I was mostly coding in C then so I spent a couple of hours figuring out how to configure Emacs to follow my conventions for spacing and indentation. It wasn’t that hard.

There was some sort of menu item for choosing a light or dark background and, of course, the minions insisted I choose the light background. As I went along, I added things like Flyspell and a mode for Troff source. As I moved to Lisp and Scheme, I added configuration for them. Now I have a reasonably large config file and every bit of it is custom built (although I’ve stolen lots of code as I went along).

The result is that I have an Emacs built just for me. The important point is that at no point did I have to stop everything and spend hours “building” Emacs. I just added stuff as I needed it and ended up with a bespoke Emacs.

This entry was posted in General and tagged . Bookmark the permalink.