{
"$type": "site.standard.document",
"canonicalUrl": "https://frankhecker.com/2005/01/07/using-the-markdown-plugin/",
"path": "/2005/01/07/using-the-markdown-plugin/",
"publishedAt": "2005-01-07T23:19:00.000Z",
"site": "at://did:plc:77mn3ult3b72tpvtqqva6tat/site.standard.publication/3mpfmfpu4u72n",
"tags": [
"blosxom"
],
"textContent": "_UPDATE 2023-03-27: This page is obsolete, as it refers to a prior version of this blog. However, it may be of historical interest._\n\nIn creating my blog I wanted to be able to go beyond plain text entries but avoid having to hand-code HTML. I looked at various schemes for marking up plain text to indicate the presence of links, ordered and unordered lists, preformatted text, etc.\n\nIn particular I was familar with [Textile][] and [Pod][] from having used them in my [Blosxom annotations][] project. (I didn’t look at all of these, but some other entrants in the “plain text markup” space include [ReStructured Text][], [Texturize][], and the various implementations of [text markup for Wikis][Wiki].)\n\nAfter looking at some alternatives I have to say that [Markdown][] is the best thing of its kind I’ve yet found; I really like it and plan to use it exclusively on my blog. I liked Markdown (and [SmartyPants][]) so well that I wanted to show my gratitude in a more concrete way, so I made a $25 donation through the [Daring Fireball][] site. (I’m a Mac user so the site is of interest to me for other reasons, and I can make use of a site membership.)\n\nOther than having one bug that I [patched][], the only other change I’d like to see in Markdown is an easy way to switch dynamically between generating HTML and XHTML; this would be useful if I ever decided to revive my attempts at doing content negotiation and serving up both HTML and XHTML flavours. As it happens this should be almost a trivial change to implement, since there is only one line in Markdown that is different for HTML vs. XHTML, and one could add a conditional statement to that line to check the value of $blosxom::flavour and do the appropriate thing. (Now that I think of it, I should do this anyway, since I suspect it might needed for the Atom flavour.)\n\nUPDATE: I did in fact create a [second Markdown patch][] for dynamically switching between HTML and XML empty element suffixes based on the flavour currently in effect. I use this for my Atom feed.\n\n[Textile]: http://textism.com/tools/textile/\n[Pod]: http://search.cpan.org/dist/perl/pod/perlpod.pod\n[Blosxom annotations]: /blosxom/annotations\n[ReStructured Text]: http://docutils.sourceforge.net/docs/user/rst/quickstart.html \"A ReStructured Text Primer\"\n[Texturize]: http://photomatt.net/tools/texturize\n[Wiki]: http://c2.com/cgi/wiki?TextFormattingRules \"An example of markup rules for a Wiki\"\n[second Markdown patch]: /blosxom/markdown-empty-element-suffix-patch \"Markdown 1.0 and 1.0.1 patches to dynamically select empty element suffixes\"\n[patched]: /blosxom/markdown-link-id-patch \"Markdown 1.0 and 1.0.1 patches to fix link ids wrapped to a new line\"\n[Markdown]: http://daringfireball.net/projects/markdown/\n[SmartyPants]: http://daringfireball.net/projects/smartypants/\n[Daring Fireball]: http://www.daringfireball.net/members/ \"Daring Fireball membership information\"",
"title": "Using the Markdown plugin"
}