Refactoring My Emacs Configuration with Claude Code

I’ve had to declare “configuration bankruptcy” a few times now,1 each time promising myself this would be the clean, well-organized config I’d maintain going forward. And each time, within months, my init.el would devolve into a sprawling maze of half-commented code blocks and sections titled things like “Misc” and “TODO: organize this.” In 2022, I made a serious attempt to fix this. Sunday afternoons at a local coffee shop became my ritual - laptop open, config file sprawled across my screen, the goal clear: create a well-documented, properly organized init....

January 2, 2026 · 10 min · Timothy Johnson

Restarting the Emacs Daemon Within emacs

Intro If you run Emacs as a daemon (and you should), you know the drill: you update your config, install a new package, or tweak some settings, and now you need to restart. The typical approach is to kill the daemon from the terminal and start it again manually. It works, but it’s clunky. There’s a better way. A simple Emacs function that saves your work, restarts the daemon cleanly, and gets you back up and running without leaving Emacs....

December 31, 2025 · 2 min · Timothy Johnson

Ollama and Emacs - Ellama for Local LLMs within Emacs

Intro I recently wrote about gptel - the Emacs package for interacting with LLMs via APIs. It’s brilliant, but every query costs money and requires an internet connection. For quick tasks like code explanations, refactoring suggestions, or drafting text, those API calls add up. Enter Ollama and Ellama. Ollama lets you run LLMs locally on your machine, and Ellama provides a clean Emacs interface to interact with them. No API keys, no costs, no internet required....

December 30, 2025 · 3 min · Timothy Johnson

Emacs: Open Org Attachments in Your System File Explorer

I use Emacs and Org mode extensively for managing notes, documents, and related assets. One recurring friction point in my workflow has been accessing Org attachments outside of Emacs, particularly when I need to copy files into other tools such as PowerPoint, Word, or other document systems. Org mode’s attachment system (org-attach) is excellent at managing and organising files, but its interaction model is primarily Emacs-centric (via Dired). Sometimes, however, the fastest path is to open the attachment directory directly in the operating system’s file explorer....

December 13, 2025 · 3 min · Timothy Johnson

Emacs and Fast Documents

Last week we received the worst possible task - we got nursery homework for our 2-year-old. Could we, please, prepare some photos from holidays and send them over1. Now, this could have been worse. They just wanted a number of photos that we could email over with some explanation. In the past this has included printing and sticking too - something that took far longer than we had anticipated. We started this by grabbing a few photos from Google Photos and downloading them....

July 5, 2025 · 2 min · Timothy Johnson

Emacs Surprises and Painting the Forth Bridge

I started using emacs in 2020 after reading a long-lost article about using org-mode as a blogging platform. It hit at the right time as I was looking for a tool that enabled auto-generated, centralised, todo lists - something that was surprisingly difficult to do at the time.1 I have written quite a bit in the last five year, including a peer reviewed journal article and use Emacs every day in my corporate job, both during my science days but also since my move to IT....

May 28, 2025 · 3 min · Timothy Johnson

Emacs - Quick Blog Functions

I am a big fan of building tools for your workflows. Here is another quick example. To create these blog posts I need to create a markdown file with some front matter. An example of this is below - indeed this is the front matter for this post. --- author: Timothy Johnson title: Emacs - Quick Blog Function date: 2025-05-27 draft: False featured_image: "" tags: ["Emacs", "personal", "tech"] --- Each time I write a blog I need to do this, I hate duplication of work!...

May 27, 2025 · 2 min · Timothy Johnson

Emacs - Defining Work Spaces

Very quick one today. Recently I’ve started to feel the need to build out some predefined window pane layouts within emacs. This started when I realised I was spending quite a bit of time flipping between various windows while I was under utilising screen space. Double this with some (forced) time spent in a VSCode for work and seeing what an advantage having a file tree, main code window and terminal would be - even when just playing with text....

April 8, 2025 · 2 min · Timothy Johnson

Denote for catch-ups

Motivation A key task at the moment is individual 1-to-1s/catch-ups. These come around quick, and I often don’t have a huge amount of time to set them up. I have started to tag things in Emacs with peoples name so that I can run queries against my agenda and pull out all tasks that I’ve tagged for someone - a great way to get info to the right people.1 What I’m missing, however, is a quick way to log notes during these calls....

February 12, 2025 · 4 min · Timothy Johnson

Introducing org-recruit (well, proto-org-recruit)

Motivation I am doing lots or recruitment at the moment - some weeks it can be near 15-25 % of my time. It is for this reason I wanted to think about my workflow and put in some automation to help me with the process. I am currently living almost exclusively in denote - the fantastic notes package by Prot. The real aim here is to remove as much cognitive load as possible and reduce the amount of time needed in preparation of interviews....

February 12, 2025 · 6 min · Timothy Johnson