Conversion between markup formats
Pandoc is a Haskell library for converting from one markup format to
another. The formats it can handle include
- light markup formats (many variants of Markdown, reStructuredText,
AsciiDoc, Org-mode, Muse, Textile, txt2tags, djot)
- HTML formats (HTML 4 and 5)
- Ebook formats (EPUB v2 and v3, FB2)
- Documentation formats (GNU TexInfo, Haddock)
- Roff formats (man, ms)
- TeX formats (LaTeX, ConTeXt)
- Typst
- XML formats (DocBook 4 and 5, JATS, TEI Simple, OpenDocument)
- Outline formats (OPML)
- Bibliography formats (BibTeX, BibLaTeX, CSL JSON, CSL YAML,
RIS)
- Word processor formats (Docx, RTF, ODT)
- Interactive notebook formats (Jupyter notebook ipynb)
- Page layout formats (InDesign ICML)
- Wiki markup formats (MediaWiki, DokuWiki, TikiWiki, TWiki,
Vimwiki, XWiki, ZimWiki, Jira wiki, Creole)
- Slide show formats (LaTeX Beamer, PowerPoint, Slidy, reveal.js,
Slideous, S5, DZSlides)
- Data formats (CSV and TSV tables)
- PDF (via external programs such as pdflatex or wkhtmltopdf)
Pandoc can convert mathematical content in documents between TeX,
MathML, Word equations, roff eqn, typst, and plain text. It includes a
powerful system for automatic citations and bibliographies, and it can
be customized extensively using templates, filters, and custom readers
and writers written in Lua.
For the pandoc command-line program, see the
pandoc-cli
package.