Add support for AsciiDoc

Hugo should support content written in AsciiDoc.


I’d also love to see support for AsciiDoc in Hugo. Markdown is fine for simple posts to Stack Overflow, issue reports on GitHub, Bugzilla reports (a recently added, long overdue, feature), and other lightweight use cases but it doesn’t have anywhere near the expressiveness of AsciiDoc. As Dan Allen so eloquently, if not a slightly inflammatorally (I don’t care if that’s not a word, it should be and English is a living language), put it in his Google+ post:

“If Markdown is a 1st-grader, then AsciiDoc is PhD student.”

AsciiDoc is not only far richer but there are already high quality tools for producing a wide range of output formats: HTML5, XHTML, DocBook, PDF, EPUB, DVI, LaTeX, roff, and Postscript, to name a few. You may ask how many of those formats would useful in in the case of a blogging platform but I doubt that I’m alone in really liking the idea of having my posts available for download in PDF and EPUB formats. This would make it possible to easily email a PDF of a post to a colleague or to have the option of loading a long post onto your ebook so you can read it on your daily commute on the train or maybe on a long flight. It would also allow well formatted for posts to later be reused in a project’s documentation (the less time I have to spend writing docs the better, reuse is a wonderful thing).

I’m not saying that Markdown should be replaced, or for that matter, even depreciated. I can imagine banging out a quick post using Markdown and other times for more complex posts using AsciiDoc. I simply can’t fathom any downside to offering users more options.

I can understand not wanting to take on the extra work required to write an AsciiDoc interpreter or porting AsciiDoctor from Ruby to Go but as luck were to have it you don’t have to. It would seem that, the obviously talented, VonC has done much of the work already with his AsciiDocGo project (he even included unit test coverage for the entire codebase). And to make things even simpler he has made his code available under the MIT license which makes it 100% compatible with Hugo’s new Apache 2 license and likely with the <0.13’s SimPL 2.0 license.

For ease of reference, here are previous discussion and GitHub Issue related to the topic of adding AsciiDoc support to Hugo:

I really hope to see this feature in the next stable release, since I have a couple of websites in Jekyll that I really would like to move to Hugo, but all contents are in AsciiDoc and I’m very limited by the Hugo unsupport of AsciiDoc

I was looking at release notes for upcoming 0.13 relase, but, iirc, didn’t see anyhing in regard to AsciiDoc. In October I read that Steve was working on it refactoring code to prepare it for AsciiDoc support, so wonder what is the current status of it and whether it’s going to be skipped for 0.13 relase?

I wrote the release notes and it is “work in progress” and based on what’s comitted to master…

On Čet, 2015-01-15 at 14:27 +0000, bjornerik wrote:


FWIW, I created a PR to document the “external helpers” addition. If people want to review it: