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")' |
Fix Links
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.