Skip to content
Universal markup converter
Haskell Lua Rich Text Format HTML Roff Jupyter Notebook Other
Branch: master
Clone or download
jgm Use -j1 for rc builds.
Avoid running out of memory.
Latest commit 0267c1f Nov 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.circleci Comment out ghc 8.8.1 build for now. Aug 27, 2019
.github Use -j1 for rc builds. Nov 19, 2019
benchmark Switch to new pandoc-types and use Text instead of String [API change]. Nov 13, 2019
data Ms template: Use Palatino for default font. Nov 17, 2019
doc doc/lua-filters.md: mention which Lua version is shipped with pandoc Nov 13, 2019
linux linux tarball: add architecture -amd64 to filename. Oct 5, 2019
macos Removed stack.pkg.yaml. Dec 28, 2017
man Update man page. Nov 19, 2019
prelude New approach to custom Prelude. Mar 18, 2018
src/Text DokuWiki reader: parse markup inside monospace ('') (#5917) Nov 18, 2019
test DokuWiki reader: parse markup inside monospace ('') (#5917) Nov 18, 2019
tools Update emoji list in Text.Pandoc.Emoji. Jul 29, 2019
trypandoc Changes in try pandoc Oct 9, 2019
windows Removed stack.pkg.yaml. Dec 28, 2017
.editorconfig .editorconfig: change tests/ to test/ as in 18ab864 Oct 27, 2017
.gitattributes Added .gitattributes. Sep 15, 2019
.gitignore Use HsYAML-0.2.0.0 Sep 22, 2019
.hlint.yaml Add .hlint.yaml Oct 29, 2017
.mailmap Add .mailmap Jan 7, 2019
.stylish-haskell.yaml More spellcheck Jul 2, 2018
AUTHORS.md Update changelog, AUTHORS. Nov 16, 2019
BUGS BUGS: Added reference to CONTRIBUTING.md. Apr 15, 2013
CONTRIBUTING.md Add info about command test naming to CONTRIBUTING Oct 16, 2019
COPYING.md Download markdown version of the license from GNU and rename to `COPY… Oct 19, 2016
COPYRIGHT Add missing copyright notices and remove license boilerplate (#5112) Feb 4, 2019
INSTALL.md Add Void Linux Oct 15, 2019
MANUAL.txt Update man page. Nov 19, 2019
Makefile Makefile: ghci target Sep 7, 2019
README.md Regenerate README.md. Nov 16, 2019
README.template Remove appveyor.yml. Oct 13, 2019
RELEASE-CHECKLIST Added tools/changelog-helper.sh. Oct 3, 2018
Setup.hs Removed custom Setup.hs, use build-type: simple. Jan 3, 2019
cabal.project Switch to new pandoc-types and use Text instead of String [API change]. Nov 13, 2019
changelog.md Update changelog. Nov 19, 2019
pandoc.cabal Use doctemplates 0.7.1 Nov 19, 2019
pandoc.hs Remove license boilerplate (pandoc.hs). Mar 1, 2019
stack.yaml Use doctemplates 0.7.1 Nov 19, 2019

README.md

Pandoc

github release hackage release homebrew stackage LTS package CircleCI CI tests license pandoc-discuss on google groups

The universal markup converter

Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. It can convert from

It can convert to

Pandoc can also produce PDF output via LaTeX, Groff ms, or HTML.

Pandoc’s enhanced version of Markdown includes syntax for tables, definition lists, metadata blocks, footnotes, citations, math, and much more. See the User’s Manual below under Pandoc’s Markdown.

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 (an abstract syntax tree or AST), 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. Users can also run custom pandoc filters to modify the intermediate AST (see the documentation for filters and lua filters).

Because pandoc’s intermediate representation of a document is less expressive than many of the formats it converts between, one should not expect perfect conversions between every format and every other. Pandoc attempts to preserve the structural elements of a document, but not formatting details such as margin size. And some document elements, such as complex tables, may not fit into pandoc’s simple document model. While conversions from pandoc’s Markdown to all formats aspire to be perfect, conversions from formats more expressive than pandoc’s Markdown can be expected to be lossy.

Installing

Here’s how to install pandoc.

Documentation

Pandoc’s website contains a full User’s Guide. It is also available here as pandoc-flavored Markdown. The website also contains some examples of the use of pandoc and a limited online demo.

Contributing

Pull requests, bug reports, and feature requests are welcome. Please make sure to read the contributor guidelines before opening a new issue.

License

© 2006-2018 John MacFarlane (jgm@berkeley.edu). Released under the GPL, version 2 or greater. This software carries no warranty of any kind. (See COPYRIGHT for full copyright and warranty notices.)

You can’t perform that action at this time.