Switching blog engines

I gave up on Blogger, where I’d been keeping my technical blog. Blogger was removing one leading space per line of pre-formatted html (“code”) on every edit/preview cycle.

Meanwhile, I’ve been enjoying using Markdown, so I poked aroud and found a WordPress solution I think I’ll like for a while. You’re looking at it.

The steps are described in a post on Syntax highlighting with Markdown in WordPress. It uses a combination of PHP Markdown Extra and GeSHi (Generic Syntax Highlighter), plus a small extension to specify which language for a block of code. It works great. I tweaked the PHP code to make the default language be Haskell instead of txt. The GeSHi-decorated code even has links to library documentation, which I love.

I had a bit of trouble along the way and got help on the #wordpress IRC channel. It turned out that I hadn’t followed the installation directions for PHP Markdown Extra, which say to move markdown.php out of its directory directly into my plugins directory. Once I knew to look in the Apache error log, it was pretty easy to track down the problem.

Still to do:

  • Work out how to automatically add documentation links to GeSHi. For now, I’ve manually added Data.Monoid, Control.Applicative, and Control.Arrow.
  • When I want to go public, get Haskell Planet to point to the new blog.


  1. conal:

    To make Haskell the default language for syntax highlighting, replace “txt” by “haskell” in markdown.php.

  2. conal:

    For Bird-style literate Haskell programming, see this extension of the steps above.

  3. main = putStrLn “Hello, World!” « unsafeReadBlog:

    […] installed, and then getting it working with haskell hilighting. Shall be following in the steps of Conal Elliot and […]

Leave a comment