🏠 About Now Archive Tags RSS

Emacs mistakes and misconceptions

I started using Emacs in the spring of 2022. I had been curious about it for a while and watched some videos by Protesilaos Stavrou and David Wilson that made it seem wroth trying. I thought I could try it out for a while to give it a chance and if it did not deliver, I could go back to Vim. At the time, I had been a Vim user for a couple of years and had simplified and improved the efficiency in my computing by using more CLI and TUI programs like NewsBoat (instead of gPodder and Liferea) and Calcurse (instead of Thunderbird Calendar) that I had then configured to use Vim keybindings. I felt that Vim's modal editing, even though I had become quite efficient, was a bit cumbersome even though people on YouTube boasted about how intuitive it felt to them (after "just" years of training their muscle memory), and I had trouble remembering some keybindings in Vim until I put a poster on the wall beneath my external screen with a keyboard and what every key did. I installed Emacs before a trip to Fredrikstad (maybe in the winter vacation or Easter vacation?) and on the ferry between Moss and Horten on my way back, I started working through the Emacs tutorial. Two years earlier, I did the same on the same ferry with the Vim tutor, but unlike the Emacs tutorial, I had to do the Vim tutor many times for the contents to really stick.

Even though I was exposed to the idea of Emacs as a cohesive environment before trying it through videos by Prot and David Wilson, I think a misconception I had early on was that it was a text editor like Vim, but with a bit more extensibility. It is not completely wrong because it is the better of the two/three best text editors in my present opinion, and that joke about it being an OS lacking only a decent text editor is obviously a joke for anyone that has used it for enough time to get to know it. For instance, I soon discovered that Emacs default keybindings made me faster than modal Vim keybindings since there are one or two key presses less for every edit. You don't have to press Esc to get into Normal Mode and you don't have to press i, o, a… to get into Insert Mode in addition to pressing keys for moving around. I had heard tales of awful key chords, but in reality, text editing used a modifier like Ctrl or Alt plus a key to move around, and I could just write to write. It felt a lot more natural and intuitive than Vim to me, even after using Vim for two years. Keybindings were also easier to remember in Emacs since they were mnemonic. (F for forward, b for backward, n for next, p for previous, d for delete, y for yank — and w for kill? Some years later, Mike Zamansky cleared that up in a video where he mentioned w was for whack, which made me laugh.)

Without the experience of a more cohesive workflow within Emacs, it is hard to imagine how useful an Elisp interpreter built around text editing can really be. Not having to bind keys to get your TUI programs to have the same keybindings as your text editor is one efficiency advantage of doing most things inside Emacs over (Neo)Vim + CLI and TUI programs, but the ability to extend or change functionality for anything you do with Elisp through well-documented functions and variables is the real superpower of doing most things within Emacs. People can tell you that, but to understand it, you have to experience it. It is not just a text editor with a scripting language for extensions, it is a programming language environment built around text editing. The use of a Lisp is also a great advantage since it is simple, easy and fast to learn and more efficient to use than other programming languages.

I did not have much time to explore Emacs in the beginning since I taught English while also studying IT, so in the start, I replaced Vim with Emacs as a text editor and kept using the rest of my CLI, TUI and GUI programs as I did before. I configured Emacs with settings from the Emacs from scratch video series by David Wilson. That worked well, and it improved my text editing speed, but I missed out on one of the main advantages of Emacs which is the cohesive work environment without context switching that Prot and David Wilson talked about until I found more time later to look into what else Emacs could do for me. I sort of knew all along that there was more to gain, and I did start to use Elfeed quite early on as a replacement for Newsboat, but otherwise, I kept using Emacs mainly as a text editor. There is nothing wrong with that, but to really gain the advantages of the cohesive work flow you can get by using Emacs, integrating other stuff into Emacs makes sense. Later on when I had more time, I did slowly replace one program at a time with Emacs modes or Emacs packages.

I think one of my main mistakes when learning Emacs was to rely too much on videos, blog articles and searches online instead of reading up more on the built-in documentation. The info reader felt a bit foreign with its somewhat strange keybindings and even though I realised C-h was there with a lot of other functionality as well, I did not really start using C-h k to find out what keybindings did, C-h m to find out what I could do in a mode, C-h v for looking up what a variable is or C-h f to look up functions, until a couple of years later. This was also related to not having much time to invest into learning Emacs in the start since I had started teaching at the vocational IT and Media production study line in the autumn of 2023 while still studying IT which made me extremely busy with making teaching materials since there exists no books for any of my subjects and at the time not much material was available on NDLA, a Norwegian digital learning portal used a lot in upper secondary (= US high) schools. If I had spent less time reading blogs and watching videos, but instead read up on the manuals and started using the built-in documentation more, early on, I think I might have come further faster. On the other hand, the great thing with blog posts and videos is that you get inspired by what and how other people use Emacs. Since configuring Vim is somewhat limited compared to programming Emacs, I was used to find most of the information I needed online and just occasionally dip into :help in Vim. Both the built-in documentation and online content are valuable, but I mainly relied on online content in the start which was a mistake.

© Einar Mostad 2010 - 2026. Content is licensed under the terms of CC BY SA except code which is GNU GPL v3 or later.
Made with GNU Emacs, Org-Static-Blog, and Codeberg Pages on GNU/Linux.