Switching to Emacs
The majority of ‘mainstream’ technology is awful. I lived for thirty years without ever really understanding what is possible with computers. The one exception to this was maybe my experience with music production software. I used Logic for a long time on a friends Mac (I’ve never owned a Mac), when we were recording stuff in his garage. I’ve also used Ableton a lot. Anyway, both those pieces of software amaze me. I’m sure there are ways to criticise them, but I really found them so empowering.
Aside from that though, most of the software I used was the default stuff. Basically just whatever comes through a web browser. I wrote an entire thesis in Microsoft Word.
Then, last year, I started using Linux full-time after my laptop broke. I had just moved to Korea, so I tried to buy a cheap replacement. I didn’t know the language at all and ended up selecting an ‘OS-less’ version on the website. When it arrived, I decided to just install linux (Pop-OS) on it instead of paying for a Windows key. I had played around with Linux in the past, but always on a dual-boot setup. When I was actually forced to use linux all the time, I started diving into it more.
I discovered vim pretty soon after that. Discovering vim, especially for someone who had to spend so much time in Microsoft Word, was like the way Bruce Springsteen described first hearing the opening snare-hit in Like a Rolling Stone (as “kicking in the door to [my] mind”). I also felt incredibly frustrated that I had waited so long to discover it. I felt frustrated that most mainstream users of technology, like me, are sold the worst kind of garbage and told that we are lucky to have it. You can’t imagine how painful it is to manually write out hundreds of bilographic references, only to later discover the citation functionality of Latex (and Markdown) and .bib files.
Anyway, I really, really love vim to bits. However, recently I started using Emacs. I don’t know why exactly. Emacs is equally incredible. It’s definitely different. Even though I am using Doom Emacs, which uses Evil/vim key bindings, there are still plenty of differences in how to ’think’ about the editor more generally. The thing that made me want to stick to Emacs for a while is org mode. It changes everything about my workflow. It makes it more centralised, more manageable.
Eventually, I’ll have to ditch Doom and try go deeper into the guts of Emacs. I still don’t really understand what’s going on a lot of the time. Still, though, most things are easier on emacs than on vim. I do miss vim’s help system and some of the features of command mode.
The only thing that bugs me about Emacs is that I still don’t know enough about it to properly troubleshoot it. For example, some of my .org files no longer automatically open in org-mode. I have to manually set it after opening the buffer. Also, I’ve started using Elfeed, but I can’t figure out how to update the feeds without first reloading the doom config. There are probably incredible simple solutions to these problems, but I’m not sure where to start.
The reasons I’ll stick with Emacs (over vim) for now:
Org-mode - Probably the best thing about emacs for me now. I love everything about it. One tiny thing that’s amazing is that you can open up different sections in a new buffer. Great for distraction-free writing. There are so many small things like this that make it so good. Org-mode also has amazing export options.
Everything seems more ‘integrated’. This is especially the case with file/buffer navigation. With vim, I did use fzf a lot to open new files, but I’d always have to keep track mentally of what directory I was in, and then figure out whether to search the entire filesystem (much slower) or if I could just search within the project directory (super fast). With emacs, there seem to be a lot more in-built options for hopping around. I use the bookmark feature a lot, and the fast auto-complete functions when just searching for the file with the filename ‘bar’ make it easy and simple to find things. I still mostly use the ‘c-^’ function from vim to switch between buffers in emacs (I rarely need to hop too much between more than two). I can’t put my finger exactly on why yet, but there’s just something about emacs’ filesystem/buffer management that feels easier and faster. I still miss fzf sometimes, but not much.
Elpher - I use this all the time now instead of Amfora
Elfeed - I’ve ditched newsboat for it.
Snippets - I did use snippets a lot with vim too, but writing snippets within Emacs (yasnippets) is really fast/easy. I don’t use emacs for coding (I don’t code), but even for general writing tasks, snippets come in handy.
writing-modes - I had these set up on vim too (goyo, vim-pencil, limelight), but on emacs they feel less buggy (maybe because its GUI emacs). I’m still switching between a couple at the moment (writeroom, zen). I love the ‘fullscreen’ feature of zen.
And so much more.
Even so, most of my joy from writing these days still comes from the vim-based keybindings/functions. If I were to just use vanilla emacs I probably wouldn’t like it as much.
Both are amazing in their own way. I just wish I could go back in time and tell myself that.