Linux Maxxing dot com

RETVRN to Emacs

I recently made a return to GNU Emacs after several years away. I quickly remembered why I used to like it so much - it is fun and satisfying. A bit like riding a bike or skiing, it comes back quickly after shaking a little dust.

Prior to Emacs

Prior to using Emacs I was (and still am) a vim user, preferring simple configs and using as much of the built-in features of vim as possible. See my first blog post for more info. I bought in to a lot of the meme takes that emacs is bloated and contrary to the Unix philosophy, suckless dot org type stuff. In hindsight this is really just saying “Emacs is hard, I don’t understand it yet, so I’m going to have a reason to justify not using it.” I’ll save the bloat rant for another post.

Like most things unknown, I never felt a need to use Emacs - everything I needed was found in vim and a slew of cli tools. So I thought.

Need to Learn Lisp

In early 2022 I started a new job which involved a lot of design work on AutoCAD. AutoCAD is a piece of software I have a love/hate relationship with: I love it because I have to use it and have so for the majority of my engineering training and career. It does what it needs to well enough, and is pretty extensible for such a monstrosity of proprietary software. I can say a whole lot more negative about it, and I already said I’d save the blot rant for another post.

AutoCAD is a relatively old piece of software, so old that it uses Lisp for scripting. Like all Lisps, AutoCAD Lisp is its own flavor but shares a lot of similarities with Common Lisp. Prior to this job I never had a need to use scripting within AutoCAD, so I took the opportunity to learn Lisp from one of the handful of popular Lisp projects: GNU Emacs.

Starting with Doom Emacs

I took the route most vim users probably do and start with a pre-configured Emacs rice, and for me that was Doom Emacs. It was a way to get my feet wet and see what Emacs is capable of before going all-in on a vanilla config. With projects like Doom and Spacemacs you get a possible end result for inspiration, perspective, and motivation, because you sure as hell are getting none of that when launching vanilla emacs for the first time. Similar to using a pre-riced window manager like those which used to ship with Arco Linux, or any of the many Arch Linux-based “distros” which are simply just bloated wm rices (Omarchy).

Even though I no longer use Doom and don’t recommend using pre-packaged configs for long term use, I still think it’s a good place to start if you’re just curious and don’t want to dedicate too much time or effort to software you may not actually like. Doom and Spacemacs give a very pleasant first impression, which was not the case when I first opened vanilla emacs out of curiosity when I was brand-new to Linux. And those first impressions are often what will make or break your opinion of the software - the same reason we almost always recommend Linux Mint to new users.

Leaving Doom

Doom is a very opinionated Emacs framework. The mods are impressive and its speed is something to behold considering all the bloat (it is actually bloated). As a newb I found it very difficult to figure out exactly what was going on under the hood; it felt very far removed from the core system and I felt like a lot of the Emacs guidance in older posts or references simply didn’t apply. Emacs is different enough as it is, and I think that’s the main reason people write off Emacs as bloated or dumb or inferior: it is different and hard when coming from anything else. To an extent Doom adds to that complexity, almost like added another OS-layer onto a program that is jokingly (but accurately) called an OS running on an OS.

Overall Doom Emacs gave me a very positive opinion on Emacs, but I knew I would be on a vanilla config in short time.

Building a Vanilla Config

After some time I decided to move to a vanilla emacs configuration. SystemCrafters and Prot were really helpful. My fairly lean ~1500 line init.el had a lot of the features you found in the wild at that time - use-package, evil & evil-collection, general, which-key, counsel, ivy, ivy-rich, corfu, etc. It relied pretty heavily on outside packages but was not nearly the beast that is Doom. And it was set and forget for about a year of primary use.

I stopped using Emacs

I stopped using Emacs because I found myself using my personal computer less and less. Other interests occupied my spare time; linux hacking became dull. I’ll go on several-month to year+ “binges” on whatever interests me the most. At that time I was making a lot of improvements to my house, so a lot of time was spent playing with power tools and clearing out woods. And a ton of biking.

If I was using an editor, it was vim, simply because I wasn’t doing anything more than tweaking a few shell scripts.

Return to Emacs

Alas last fall my interest in linux was renewed through self-hosting and making a homelab, as cringe as that word is. It is a level of fun I hadn’t tapped into and a side of linux (larping as a sysadmin) I hadn’t done much of before. And so it was only a matter of time before I jumped back on the Emacs train, even if just out of curiousity.

Fast foward to January, 2026. I haven’t touched Emacs in over 2 years, probably closer to 3. I see and consoom a bit of new emacs content on yt, some new guys in the game, joined some chats with a number of emacs users, and decide to fire her up again. After a couple minutes of package updating, to my surprise it launches just as I remembered it. Had to refresh myself on some of the major keybindings, but that came back pretty quick. Emacs is great because M-x (alt-x) can be used to launch anything, and C-h can be used to quickly access help files. So when you can’t remember what to do it doesn’t take much effort to figure out, especially if using some kind of matching/completion system in the minibuffer (recommended). I take the same approach with vim - learn the commands over the keybindings.

As I re-write my config and experiment more with Emacs, I’ll post here to document what I’ve done without the need for a bloated literate config, as well as some spicy Emacs takes. That way any of you Emacs-curious readers or Doom Emacs enjoyers can learn from my mistakes experiences and be on your way to a diy config.

If you’re curious about Emacs, give it a try. It’s fun - that’s the only reason you need.