Emacs Is the Ultimate Editor Building Material

Emacs is not a great text editor in and of itself—it’s a building material for the best text editor you can make for yourself.

I find this to be absolutely true as I stare at my 1700 line init.el that customizes Emacs to my needs. There is a way to do pretty much anything you could want with enough fiddling.

Read Why Emacs: Redux by Bozhidar Batsov.

  • Emacs

    A free/libre text editor that has so much functionality that it’s often joked about being an operating system that has an ok text editor.

  • Tools for Thought Are Necessarily Monolithic

    I read Unbundling Tools for Thought and I find myself agreeing and disagreeing. They are correct that people over invest in tools for networked thought and can get stuck in an unproductive cycle of rebuilding the system over and over again. They are incorrect that the solution is to unbundle into multiple tools and interop between them—point solutions are good at what they do but don’t provide as much building material needed to make it a home.

  • How to Use Embark for Emacs

    Embark for Emacs seems like a useful way to further customize Emacs actions (M-x). I still don’t understand why I would want to use it, so this note is an exploration to try it out and see if it’s useful.

  • Show All Buffer Local Variables in an Emacs Buffer

    Sometimes using Emacs you want to know what variables are being set in the current buffer. C-h v lists all the variables, including buffer-local variables in the minibuffer which you can then search and refine just like any other minibuffer session. This is really handy when you customized some settings using hooks and want to verify they took. For example, setting the org-download directory based on filetags.

  • Coding Is Convenient

    While I don’t write code every day, I find it incredibly convenient.

  • Personal Infrastructure

    It’s useful to think about the underlying utilities that go into running one’s life and business with the same rigor used to build something significant. Afterall, the things we rely on every day can have an outsized impact on our own performance so why not treat it that way?

  • Org-Ai Emacs Integration

    I built org-ai using Python which exposes an AI chat interface through a simple CLI. This makes it a bit clunky when using it from Emacs—I would need to open up an instance of a terminal, activate the virtual environment, and execute the program to start the chat.

  • At Mentions for Org-Mode

    A pattern I really like in Notion is that you can a @ (at) mention any page with search as you type and autocomplete. I’d like to do something similar in org-mode so that I can quickly link related headlines.

  • Emacs and Chromadb

    The nice part about ChromaDB is that you can read the tables in SQLite using the new Emacs 29 sqlite-mode. That means there is no other configuration for accessing the database, you can open the sqlite file directly.

  • Ways to Use AI With Emacs

    I want to better utilize AI tools in my day-to-day work. I suspect there is much more I can be doing and using Emacs as building material to make it work for me.

  • Defadvice Is Text Editor Superglue

    The Emacs advice system lets you modify the code running Emacs in a simple way. For example, if you wanted to change one line in a package you use to do something different or fix a bug before the maintainers release a new version, you can “advise” code to do what you want.