Bending Emacs - Episode 5: Ready Player Mode

I'm now a bit over a month into my Emacs video-making journey. Today I bring a new episode. Bending Emacs Episode 5: Ready Player Mode Having migrated to mostly playing offline music, in this episode I show how to use Ready Player Mode (a … | Continue reading


@xenodium.com | 5 days ago

agent-shell 0.17 improvements + MELPA

While it's only been a few weeks since the last agent-shell post, there are plenty of new updates to share. What's agent-shell again? A native Emacs shell to interact with any LLM agent powered by ACP (Agent Client Protocol). Thank you sponsors Before getting to the latest and gr … | Continue reading


@xenodium.com | 6 days ago

time-zones now on MELPA. Do I have your support?

A little over a week ago, I introduced time-zones, an Emacs utility to easily check city times around the world. Today, I'm happy to report, the package has been accepted into MELPA. It's been wonderful to see how well time-zones was received on Reddit. ✓ You asked for MELPA pub … | Continue reading


@xenodium.com | 14 days ago

Bending Emacs - Episode 4: Batch renaming files

I'm now a few weeks into my Bending Emacs series. Today I share a new episode. Bending Emacs Episode 4: Batch renaming files In this video, I show a few ways of batch renaming files. The covered flows are: Dired editable buffers. Multipl … | Continue reading


@xenodium.com | 18 days ago

Emacs time-zones

Emacs ships with a perfectly functional world clock, available via M-x world-clock. Having said that, there are two things I wish it had: A quick way to interactively add any city (bonus points for fuzzy search). An easy way to shift the time back and forth. As far as I can tel … | Continue reading


@xenodium.com | 22 days ago

Bending Emacs - Episode 3: Git clone (the lazy way)

Continuing on the Bending Emacs series, today I share a new episode. Bending Emacs Episode 03: Git clone (the lazy way) In this video, I show my latest iteration on an expedited git clone flow. If this topic sounds familiar, I covered it … | Continue reading


@xenodium.com | 26 days ago

agent-shell 0.5 improvements

While it's only been a few weeks since introducing agent-shell, we've landed nearly 100 commits and enough improvements to warrant a new blog post. More agents agent-shell now includes support for two additional ACP-capable agents: Claude Code Codex via codex-acp (new) Gemini CL … | Continue reading


@xenodium.com | 29 days ago

Bending Emacs - Episode 2: From vanilla to your flavor

While still finding my footing making Emacs videos, today I'm sharing my second video. Bending Emacs Episode 02: From vanilla to your flavor The video is a little longer than I intended at 14:37, so plan accordingly. In this video, I show some of my favorite UI customizations, wi … | Continue reading


@xenodium.com | 1 month ago

Bending Emacs - Episode 1

While most of the content I share is typically covered in blog posts, I'm trying something new. Today, I'll share my first episode of Bending Emacs. This video focuses on how I like to apply (or batch-apply) command line utilities. While … | Continue reading


@xenodium.com | 1 month ago

Introducing Emacs agent-shell (powered by ACP)

Not long ago, I introduced acp.el, an Emacs lisp implementation of ACP (Agent Client Protocol), the agent protocol developed between Zed and Google folks. While I've been happily accessing LLMs from my beloved text editor via chatgpt-shell (a multi-model package I built), I've be … | Continue reading


@xenodium.com | 1 month ago

Introducing acp.el

I recently shared my early Emacs experiments with ACP, the Agent Client Protocol now supported by Gemini CLI and Claude Code LLM agents. While we can already run these agents from Emacs with the likes of vterm, I'm keen to offer an Emacs-native alternative to drive them. To do th … | Continue reading


@xenodium.com | 1 month ago

So you want ACP (Agent Client Protocol) for Emacs?

Last week, I was delighted to see the Zed editor shipping beta support for their Claude Code integration. Being an Emacs enthusiast, you may wonder about my excitement. In their demo, the Zed team mentioned the integration is now possible thanks to Agent Client Protocol (ACP), wh … | Continue reading


@xenodium.com | 2 months ago

Diverted mode

James Dyer and I both ran into the same workflow snag when fixing source indentation. He explains it best: You’re working in a file with inconsistent indentation You want to fix the entire buffer’s formatting You run C-x h (select all) followed by M-x indent-region Your mark is … | Continue reading


@xenodium.com | 2 months ago

Who moved my text?

I had an annoying chatgpt-shell bug where sometimes the compose buffer's svg header would disappear while text was streaming into the Emacs buffer. There are a number of things that could have gone rogue when streaming and post-processing buffer text, so I wasn't quite sure where … | Continue reading


@xenodium.com | 2 months ago

Dired buffers with media overlays

It's been well over a year now since I've moved most of my music consumption away from streaming. I started purchasing music again, just so I can play offline at any time (and on my terms). That's not so say I don't stream, but that's now purely reserved for discovery. Most playb … | Continue reading


@xenodium.com | 2 months ago

Brisket recipe

On a whim, after seeing a random brisket picture online, I decided today was the day to make my first brisket. Ingredients 15g Kosher salt (coarse) 15g Black pepper (coarsely ground) 10g Smoked paprika 5g Chipotle powder 5g Onion granules 5g Garlic granules 2g Cumin seeds, to … | Continue reading


@xenodium.com | 2 months ago

A tiny upgrade to the LLM model picker

A little while ago, I added an info header to chatgpt-shell's compose buffer. It displays the current model's icon, using the lovely Lobe Icons 🥨. With that in place, it was only a matter of time until M-x chatgpt-shell-swap-model got a similar upgrade in my Emacs package … | Continue reading


@xenodium.com | 2 months ago

Emacs elevator pitch

Me: Have you heard of Emacs? Me: On the surface, it looks like a text editor… Me: But really, it's more like a gateway to a world moulded to your needs. Me: Emacs ships with an RPN calculator and even a doctor. Me: Naturally, it doesn't do everything I want it to do nor how I wan … | Continue reading


@xenodium.com | 2 months ago

Emacs as your video-trimming tool

Marcin ‘mbork’ Borkowski has a nice post showing us how he trims video clips from our beloved editor. Trimming clips is something I do from time to time, specially when posting a screencast of sorts. Since I don't need much, I typically resort to QuickTime Player's trimming funct … | Continue reading


@xenodium.com | 2 months ago

macOS dictation returns to Emacs (fix merged)

macOS apps typically benefit from built-in voice dictation input (included as a macOS freebie), with little to no additional work required from app developers. Emacs had supported this capability until relatively recently, when we began seeing reports that dictation was no longer … | Continue reading


@xenodium.com | 3 months ago

Writing experience: My decade with Org

While I missed Emacs Carnival's Take two, with this month's prompt being Writing Experience, I figured I may have a thing or two to share about my Org adoption. Org mode is often regarded as one of the indispensable Emacs features. A Swiss army of sorts enabling outlining, presen … | Continue reading


@xenodium.com | 3 months ago

Interactive ordering of dired items

Redditor sauntcartas offers a nice solution for getting Emacs dired filenames in an arbitrary order. I have to say, while relatively rare, this is something I need from time to time. You see, I like to apply batch file operations from the comfort of dired buffers (via dwim-shell- … | Continue reading


@xenodium.com | 3 months ago

Patching your Homebrew's Emacs Plus (macOS)

Patching and building Emacs from source on macOS is fairly straightforward, but what if I'd like to patch my Emacs Plus Homebrew builds? Let's cover both ways of patching our favourite editor… Patching Emacs upstream sources If you'd like to build from the master branch, you can … | Continue reading


@xenodium.com | 3 months ago

Emacs send-to (aka macOS sharing) merged upstream

Back in February, I asked folks on the Fediverse if I should try to contribute native macOS sharing to Emacs upstream. While folks were keen on the sharing feature, there were reservations about whether or not a macOS-only patch would be welcome upstream. While my chances of succ … | Continue reading


@xenodium.com | 3 months ago

Mochi Invaders now on the App Store

As a beginner learner of Japanese, I still need regular practice reading Kana (Hiragana and Katakana). Rather than using one of the countless existing resources, I decided to build my own little Space-Invaders-style game. No doubt I was procrastinating, but learning SpriteKit and … | Continue reading


@xenodium.com | 4 months ago

Markdown is coming to Journelly

When Journelly launched, I asked users to get in touch if they were interested in Markdown support. Since then, Markdown has by far been the most requested feature. Today, I’m excited to share that Journelly beta builds now include initial Markdown support! If you’ve been in touc … | Continue reading


@xenodium.com | 4 months ago

EverTime available via Homebrew

I typically like my macOS desktop free from distractions, which includes hiding the status bar. Having said that, I don't want to lose track of time, and for that, I built a tiny ever-present floating clock. While it's been a while since I built this clock, it's only now that I d … | Continue reading


@xenodium.com | 4 months ago

Journelly 1.2 released

What's new? Journelly v1.2 focuses exclusively on improving app accessibility. In particular: Improved VoiceOver navigation and general app experience. Improved edit layout when "Settings > Accessibility > Display & Text Size > Button Shapes" is enabled. Huge thanks to Yvonne Tho … | Continue reading


@xenodium.com | 5 months ago

Ranking Officer now on the App Store

With a handful of apps on the App Store, I like to keep an eye on their rankings and user reviews from around the world. I don't need much. Just a quick glance. A few of weeks ago, it just dawned on me that my Mac's status bar is likely the perfect place to keep this glanceable i … | Continue reading


@xenodium.com | 5 months ago

Awesome Emacs on macOS

While GNU/Linux had been my operating system of choice for many years, these days I'm primarily on macOS. Lucky for me, I spend most of my time in Emacs itself (or a web browser), making the switch between operating systems a relatively painless task. I build iOS and macOS apps f … | Continue reading


@xenodium.com | 5 months ago

Journelly 1.1 released

Journelly 1.1 available on the App Store What is Journelly? Journelly feels like tweeting but for your eyes only. A fresh take on frictionless note-taking for iOS, powered by Org plain text. Save cooking recipes, movies, music, restaurants, coffee shops… Jot down your thoughts. S … | Continue reading


@xenodium.com | 5 months ago

LLM text chat is everywhere. Who’s optimizing its UX?

When it comes to programming LLM tools, I've seen modes of interaction in the form of code completion, patch application, improvement suggestions, and text chat amongst others. Text chat is everywhere. In the context of text chat UX, I haven't really come across huge differentiat … | Continue reading


@xenodium.com | 5 months ago

A richer Journelly org capture template

In addition to including user content, Journelly entries typically bundle a few extra details like timestamp, location, and weather information, which look a little something like this: Behind the scenes, Journelly entries follow a fairly simple org structure: * [2025-04-23 Wed 1 … | Continue reading


@xenodium.com | 5 months ago

Journelly: like tweeting but for your eyes only (in plain text)

On iOS, we're spoiled for choice when it comes to note-taking, journaling, or social media apps. In note-taking alone, I've flip-flopped back and forth between different note-taking and journaling apps. For one reason or another, none would stick. My initial attempt at building s … | Continue reading


@xenodium.com | 6 months ago

Journelly for iOS

Like tweeting but for your eyes only ✨ frictionless notes / journal ✨ 🍦 backed by plain text 🍦 🫧 fully offline 🫧 💬 what folks are saying 💬 Privacy first By default, all notes and media are stored on your iPhone, entirely offline. A … | Continue reading


@xenodium.com | 6 months ago

My projects

Hi, I’m Álvaro 👋. These are my projects. Web lmno.lol - Start your blog here (no ads, tracking, paywalls, or bloat). Powered by a single markdown file. Drag and drop to the web. Bring your domain. My xenodium.com blog is hosted at lmno.lol. iOS Flat Habits Inspired by Ato … | Continue reading


@xenodium.com | 6 months ago

Flat Habits for iOS

Form and track positive lasting habits built with 💙 by me - powered by org 🦄 Why Keeping habits accessible and trackable has helped me form good habits. I built an app to remove friction from the tracking process, so I could increase the likelihood of sticking wit … | Continue reading


@xenodium.com | 7 months ago

Plain Org for iOS

4.7 / 5 ★★★★★ Bring org to your iPhone built with 💙 by me - powered by org 🦄 Why? Org mode on Emacs is wonderful. I'm a big fan and use it regularly on my laptop. As an iPhone user, I wanted quick access to my org files while on the go... so I built Plain Org for … | Continue reading


@xenodium.com | 7 months ago

Journelly vs Emacs: Why Not Both?

JTR recently posted an interesting question in response to Irreal's post wondering why he feels the need to use something that is not Emacs for quick notes? While I'm in no position to speak on behalf of Irreal, I am the Ramírez building this Journelly app he speaks of ;-) From m … | Continue reading


@xenodium.com | 7 months ago

The Mac Observer showcases Journelly

The Mac Observer is showcasing Monday App Finder: Journelly, a Twitter-Like Journal for iOS. Bemfica de Oliva does a wonderful rundown of Journelly's features and capabilities, much better than anything else I've posted before. They even mentioned Org markup and Emacs text editor … | Continue reading


@xenodium.com | 7 months ago

Journelly open for beta

I've reignited Journelly, my note-taking/journaling project. The iOS app is coming along nicely. I've been using Journelly daily. The best I can describe the experience is: "kinda like tweeting but for my eyes only". Journelly automatically includes date and time in your entries. … | Continue reading


@xenodium.com | 8 months ago

DeepSeek, Open Router, Kagi, and Perplexity join the chat

Back in November, I announced the chatgpt-shell Emacs package going offline. In real terms, it meant adding Ollama support after chatgpt-shell went multi-model. Since then, support for a handful of providers and models has been added. While DeepSeek is the latest joinee, Open Rou … | Continue reading


@xenodium.com | 8 months ago

Keychron K3 Pro: F1-F12 as default macOS keys

After resetting my Keychron K3 Pro, my F1 to F12 keys were no longer my default macOS keys. The entire row was defaulting to macOS's special keys (i.e. Mission Control, Launch Pad, Volume, etc). At first, I thought I may just need to revisit the macOS setting "Use F1, F2, etc key … | Continue reading


@xenodium.com | 8 months ago

Alzheimer bookmarks

#NYC #Alzheimer's Association hybrid event (in-person and Zoom). Dementia Training Australia (DTA), Free online courses and resources. Woman claims Alzheimer’s symptoms were reversed after five years | CNN. | Continue reading


@xenodium.com | 9 months ago

Raspberry Pi bookmarks

Raspberry Pi 5: Getting Started - YouTubee. | Continue reading


@xenodium.com | 9 months ago

Sourdough bookmarks

Reading crumbs structure: fermentation. Todays loaf and some advice after making 100+ loaves over 6 years. | Continue reading


@xenodium.com | 9 months ago

E-ink bookmarks

cPiArtFrame. DIY E-Ink clock update with more faces, github repo & full youtube tutorial. Show HN: E-Paper 7-color display showing the current weather | Hacker News. | Continue reading


@xenodium.com | 9 months ago

A tour of Ready Player Mode

Ready Player Mode, which began as a tiny media-viewing experiment, has now become my daily music player. Along the way, I moved from regular daily streaming to buying and playing music offline, relying on the odd streaming service exclusively for discovery. This setup's been work … | Continue reading


@xenodium.com | 9 months ago