Walter Manger | To The Triforce
Quests for Knowledge

Emacs & Org As My Blog Generator

I made a change over the past couple of weeks that allows me to blog exclusively from Emacs’ Org-Mode. There are a few cons to this approach.

  1. Slower generation time
  2. Difficult to customize (right now anyway)

Why Move Away From Hugo?

I have not really moved away from Hugo, this is an experiment. In fact, a few months ago I saw that there is now support for generating pages/posts through Hugo from Org files. Essentially, all of the Org files that I am creating should be able to be used in Hugo. I just really wanted to see what it was like to use Just Org-Mode to generate a blog.

Hugo is great. I’ve not had to spend really any time messing with configuration for Hugo. It just works, consistently and efficiently, and that’s attractive.

What Do I Miss?

Zero Configuration

Being new to elisp and Org in general, getting used to how org-publish worked was a little daunting. In the end, I was able to make things happen, although it seemed like things could have been easier if there were things like includes and layouts. For example, the index.html of this site has a (slightly) different layout than the posts pages. I resorted to scanning the file for paths that needed to be changed.

Short Codes

Hugo make it easy to embed things like Youtube videos in a post through a shortcode. There is a way to do something like this in Org-Mode, but it isn’t a standard and therefore, if I switch back to Hugo as my generator, I’d have to modify Hugo to know what to do with such codes.

Categories & Tags

The way Org-Mode generates sites now is pretty basic. There is a Posts folder and everything is generated there. I don’t currently have a way to reproduce the Category & Tags generation that Hugo has.

Drafting

I have not figured out how to mark something as a draft other than ignoring a file extension. For now, I just create draft files with a .orgx extension.

The Power of Org

With its many flaws, there are places where Org shines. Namely, generating graphs, mathematical notation, linking between documents, syntax-highlighted, runnable code blocks, and more. Looking at and interacting with Org as opposed to Markdown is delightful. There are so many little things that it gets right for the author.

Ideas For The Next Yak Shaving Session

Work Off A Single File

Instead of generating a sitemap file, use a single file. This way, drafts can be dictated through the use of Org’s TODO. I’ll need to think about how this would work and possibly take inspiration from Endless Parentheses.