OpenPandoc is a variant of Pandoc that supports version 3.0
or later of the parser combinator library Parsec. In all
other aspects, the code is unchanged from the original
version. A separate package is necessary, unfortunately, as
the original author of Pandoc refuses to support current
versions of Parsec, because he thinks that they are too
slow. It is true that Parsec 3.x is somewhat less
performant than the 2.x branch used to be, so if you intend
to use Pandoc for formatting huge amounts of data on a
regular basis, it might be worthwile to build it with
Parsec 2. For everyone else, however, the difference in
speed is hardly noticable. Using Parsec 3 is much more
convenient, though, because -- unlike the old version --
that package is oftentimes available through your system's
packet manager, i.e. in ArchLinux.
Generally speaking, Pandoc is a Haskell library for
converting from one markup format to another, and a
command-line tool that uses this library. It can read
markdown and (subsets of) reStructuredText, HTML, and
LaTeX, and it can write markdown, reStructuredText, HTML,
LaTeX, ConTeXt, Docbook, OpenDocument, ODT, RTF, MediaWiki,
groff man pages, and S5 HTML slide shows.
Pandoc extends standard markdown syntax with footnotes,
embedded LaTeX, definition lists, tables, and other
features. A compatibility mode is provided for those
who need a drop-in replacement for Markdown.pl.
In contrast to existing tools for converting markdown
to HTML, which use regex substitutions, pandoc has
a modular design: it consists of a set of readers,
which parse text in a given format and produce a native
representation of the document, and a set of writers,
which convert this native representation into a target
format. Thus, adding an input or output format requires
only adding a reader or writer.