[web-devel] Announce: markdown 0.1

Michael Snoyman michael at snoyman.com
Tue Jul 17 06:05:44 CEST 2012


Thank you for the link to the test suite! I thought I'd seen
references to it elsewhere, but didn't know where to find it. I've
already started making some changes based on it.

As for discount and sundown: I actually forgot to mention in my
"distinguishing features" that the markdown package is pure Haskell,
which makes it far simpler to get it working on Windows, and
simplifies to some extent uploading executables to a server. In
theory, markdown also has the potential to be a very fast renderer,
though I have neither benchmarked it nor optimized it yet.

On Tue, Jul 17, 2012 at 12:48 AM, John MacFarlane
<fiddlosopher at gmail.com> wrote:
> Michael,
>
> Have you tested this using the markdown test suite (and preferably also
> the PHP markdown test suite)? There are so many complexities in parsing
> markdown correctly that aren't obvious at first. (I say this from
> experience!)
>
> http://six.pairlist.net/pipermail/markdown-discuss/2007-May/000616.html
> http://www.mail-archive.com/markdown-discuss@six.pairlist.net/msg01542.html
>
> I can see from a few cursory tests that the library is FAR from being
> an accurate and complete markdown renderer.
>
> -------------- nested lists
>
> % ./markdown  # <- a shell around Text.Markdown with default options
> 1. one
>     1. two
>         - three
> <ol><li>one</li></ol><pre><code>1. two
>     - three</code></pre>
>
> % Markdown.pl  # <- original markdown perl script
> 1. one
>     1. two
>         - three
> <ol>
> <li>one
> <ol><li>two
> <ul><li>three</li></ul></li></ol></li>
> </ol>
>
> -------------- inline code
>
> % ./markdown
> ``` `` ```
> <p>``<code>  </code>``</p>
>
> % Markdown.pl
> ``` `` ```
> <p><code>``</code></p>
>
> -------------- reference-style links
>
> % ./markdown
> [Hi][]
>
> [Hi]: /url
> <p>[Hi][]</p><p>[Hi]: /url</p>
>
> % Markdown.pl
> [Hi][]
>
> [Hi]: /url
> <p><a href="/url">Hi</a></p>
>
> Some advice:  If you want a fast, non-GPL markdown parser, use
>
> http://hackage.haskell.org/package/discount
>
> or
>
> http://hackage.haskell.org/package/sundown
>
> (which wraps the library used by github).
>
> John
>
> +++ Michael Snoyman [Jul 15 12 17:28 ]:
>> Hi all,
>>
>> I've just released the first version of the markdown package to
>> Hackage[1]. I've been using this package for a while already for
>> rendering blog posts on yesodweb.com. I put in some time today
>> cleaning it up and fixing some features, and feel it's now ready for
>> an experimental release.
>>
>> The distinguishing features of this library versus other options are:
>>
>> * Uses blaze-html types natively, making it easy to use with many
>> existing libraries (Hamlet included).
>> * Permissive license (BSD3).
>> * attoparsec and conduit used for parsing.
>> * Built in XSS protection (though you can disable it if desired).
>>
>> The library also has a very thorough test suite, but I'd be happy to
>> accept more test cases. Please report issues/send pull requests on
>> Github[2].
>>
>> Michael
>>
>> [1] http://hackage.haskell.org/package/markdown
>> [2] https://github.com/snoyberg/markdown
>>
>> _______________________________________________
>> web-devel mailing list
>> web-devel at haskell.org
>> http://www.haskell.org/mailman/listinfo/web-devel
>>



More information about the web-devel mailing list