WhileĬonversions from pandoc's Markdown to all formats aspire to be perfect,Ĭonversions from formats more expressive than pandoc's Markdown can be And some document elements, such asĬomplex tables, may not fit into pandoc's simple document model. PandocĪttempts to preserve the structural elements of a document, but notįormatting details such as margin size. Users canĪlso run custom pandoc filters to modify the intermediate AST.īecause pandoc's intermediate representation of a document is lessĮxpressive than many of the formats it converts between, one should notĮxpect perfect conversions between every format and every other. Thus, addingĪn input or output format requires only adding a reader or writer. Which convert this native representation into a target format. The document (an abstract syntax tree or AST), and a set of writers, Which parse text in a given format and produce a native representation of Pandoc has a modular design: it consists of a set of readers, Pandoc's enhanced version of Markdown includes syntax for tables,ĭefinition lists, metadata blocks, footnotes, citations, math, and much For the full lists of input and output formats, see the
Pandoc can convert between numerous markup and word processingįormats, including, but not limited to, various flavors of Markdown, HTML, Pandoc is a Haskell library for converting from one markup format to another,Īnd a command-line tool that uses this library.