Using org-mode with Jekyll
Since my journey into Google Docs’s Hell I have been getting more reacquainted with org-mode for other purposes as well. Traditionally, I have been writing this blog using Markdown and publishing it with Jekyll. I love Markdown, and while it is fine for most cases, but what better way to gain more experience with org-mode than to blog with it! The best tutorial that I have found so far is this one from the org mode web site: Using org to Blog with Jekyll. One “gotcha” that I have ran into so far, is everything breaking if I include a table of contents (which happens by default when you export to HTML). The simplest solution for this is to add the following to the top of your org flavored file.
#+OPTIONS: toc:nil
This allows the front-matter to be exported properly. I am also choosing not to include section numbering for my posts. So the complete front-matter for this post looks like this:
#+OPTIONS: toc:nil num:nil
#+BEGIN_HTML
---
layout: post
title: "Using org-mode with Jekyll"
permalink: /:title/
tags: hacking
---
#+END_HTML
Configuration
;; File ~/.emacs.d/customizations/setup-org.el
;; ...
;;;;
;; Projects
;;;;
;; levlaz.org Blog
(setq org-publish-project-alist
'(("levlaz"
;; Path to org files.
:base-directory "~/git/levlaz.org/_org"
:base-extension "org"
;; Path to Jekyll Posts
:publishing-directory "~/git/levlaz.org/_posts/2016/"
:recursive t
:publishing-function org-html-publish-to-html
:headline-levels 4
:html-extension "html"
:body-only t
)))
Workflow
- Add a new file to
git/levlaz.org/_org/$DATE-$TITLE.org
- Add the front matter shown above
- Blog my heart out
- Check my spelling with
ispell
- Publish the org file with
C-c C-e P p
, this moves the file fromgit/levlaz.org/_org/
to/git/levlaz.org/_posts/2016/$DATE-$TITLE.html
- Build and Deploy my site with my Rakefile:
rake deploy
.
Conclusion
Thank you for reading! Share your thoughts with me on bluesky, mastodon, or via email.
Check out some more stuff to read down below.
Most popular posts this month
- 2024
- Reinstalling Windows at 1am
- SQLite DB Migrations with PRAGMA user_version
- My Custom Miniflux CSS Theme
- How to Disable Wayland in Debian Testing
Recent Favorite Blog Posts
This is a collection of the last 8 posts that I bookmarked.
- Underused Techniques for Effective Emails from Refactoring English
- Death by a thousand slops from daniel.haxx.se
- The AGI economy is coming faster than you think from Freethink
- Rolling the ladder up behind us from Xe Iaso's blog
- In Praise of “Normal” Engineers from charity.wtf
- Reports of Bluesky's death have been greatly exaggerated from The Torment Nexus
- What Would a Kubernetes 2.0 Look Like from matduggan.com
- We Can Just Measure Things from Armin Ronacher's Thoughts and Writings
Articles from blogs I follow around the net
Introducing my new Atomic Design Certification Course!
TL;DR: You can preorder my new Atomic Design Certification Course for only $50! Why create an Atomic Design Certification Course? I’ve got big ambitious for this course, and I’m aiming to: Increase design system adoption For years, people (me included!) […
via Blog – Brad Frost July 23, 2025Issue 89 – Crypto wins in Washington with midnight calls, chocolate bars, and a $141 million threat
Trump stands to profit from a $2 billion bitcoin bet as the crypto industry pushes through bills aimed at bolstering the sector
via Citation Needed July 23, 2025Pluralistic: Installing Android phones in Blackberry chassis (23 Jul 2025)
Today's links Installing Android phones in Blackberry chassis: From e-waste to a better phone. Hey look at this: Delights to delectate. Object permanence: Owning "freedom of expression"; Spider-silk thread; Auditing your body's code; RIP E…
via Pluralistic: Daily links from Cory Doctorow July 23, 2025Generated by openring