Moving to Octopress

Behold! Fuzzy Tolerance has moved from Wordpress to Jekyll/Octopress.

Jekyll is the engine behind Github Pages and is a static-site generator. That’s right - no PHP, .NET, Python, RoR, etc. - plain old HTML. You set up a HTML/CSS/JavaScript template, write your content in HTML or Markdown, and then generate your whole site. Rsync up to your server, Bob’s your uncle. No databases or server-side content required. Octopress is a blogging framework that sits on top of Jekyll and adds a lot of convenience.

I have been pondering moving this blog to Jekyll ever since I read this post from Development Seed. Right now it is using the default Octopress template, which is really nice and fully responsive, but it will soon be replaced with a (uglier) version of my own creation. There will probably be some bugs I need to smooth out here and there as well.

I really like Octopress so far. Writing posts in Sublime Text 2 in Markdown is kind of awesome, and being straight HTML it’s crazy quick. I thought I’d do a quick Wordpress to Octopress post to capture a few tricks before I forget them entirely.

Converting Wordpress Posts

There are a number of ways to get from Wordpress to Jekyll. I found a lot of posts that recommended Exitwp, but I found that method ate iframes to video content. I ended up going with Jekyll’s built-in Wordpress export file converter:

1
ruby -rubygems -e 'require "jekyll/migrators/wordpressdotcom"; Jekyll::WordpressDotCom.process("wordpress.xml")'

If you have to fix a bunch of links, let me introduce you to my friend sed. sed is one of those freaky commands that doesn’t appear to run in normal space-time. I had it process 500+ text files, and I swear it was done before I pressed the enter key.

1
sed -i 's/oldurl.com/newurl.com/g' *.md

Set comments: true

The conversion process left all of my posts with comments off (or more specifically no comment yaml). Say hi to sed again. This sticks comments: true on the second line of every markdown file.

1
sed -i '2icomments: true' *.md

ZSH Problems

As it turns on, zsh doesn’t like some rake commands. To fix that, drop this in ~/.zshrc:

1
alias rake="noglob rake"

Captions

This was the only real pain in the ass. Wordpress adds a funky [caption blah blah] thing to captioned images, and I couldn’t figure out a great way to filter those out and convert them. This is the only thing I had to edit by hand.