Blog now processed by Jekyll

So a while ago I created my own parser to make a blog in Dropbox. The basic setup was to store the markdown-files in Dropbox and have a hosted PHP-file get these files and parse them ‘on the fly’.

Apparently there are more ways to do this. Jekyll also parses static markdown files into a working blog site. There’s even the same color-theme (solarized) as I was using before.

So, without further ado, it is now possible to browse exactly the same content as you had before! :D

Why

Of course there are some advantages to the new setup:

Changes

Content transfer was not a one-click solution. I had to go through all my blogposts and change the following:

Codeblocks

I’ve had to change all codeblocks from ``` to ~~~. This one sounds simple, but was the most work. I wanted Github style codeblocks using the three backticks, but none of the Jekyll Markdown parsers properly support it. So instead I had to revert to three tildes. 2017: this is no longer true, backticks are now also supported

Titles

My old blog had a separate file where the titles+filenames of all blogs were for creating an ‘index’. The titles inside the article where written with the default Markdown method (adding a list of ====== under the title). Jekyll creates the list of blogposts automatically from the blog-files, but uses a customised method of defining the title (and other meta-data):

---
title: Blog now processed by Jekyll
category: stronk
layout: post
---

Add dates

One of the advantages of my old blog was that I didn’t have to have dates attached to my articles. So that means my one reader wouldn’t see the extremely low update frequency. Sadly, Jekyll is based around these dates and I had to retroactively look up all dates for the articles and add them.

Publishing method

With the old method, I wrote an article in Dropbox and published it by adding it to the list of ‘published articles’. The parsing etcetera happened automatically. With Jekyll, I have to compile and upload the site actively.

Base url

Basically this is fucked up. Jekyll doesn’t properly do the base url, so you got to work around it. Add a ‘site.url’ and ‘site.baseurl’ in your config file, and have these added to the ‘base’ in your html-head. And then you have to make sure all links made by Jekyll have no slash in front with:

| remove_first:'/'}}

Changing links

So Jekyll doesn’t do auto-link creation for URLs in Markdown. Pity, parsedown did do it… I had to update all blog-items and change the links (www.example.com to <www.example.com>).