In favour of


Supports using pandoc with citeproc

Version on this page:0.14.8
LTS Haskell 16.31:
Stackage Nightly 2020-06-16:0.17
Latest on Hackage:

See all snapshots pandoc-citeproc appears in

BSD-3-Clause licensed by John MacFarlane, Andrea Rossato
Maintained by [email protected]
This version can be pinned in stack with:pandoc-citeproc-0.14.8@sha256:74a944709c7ef4d218413cc2c12f33e0c77780181be2b00a372e466518ba43cf,8196


This package provides a library and executable to facilitate the use of citeproc with pandoc 1.12 and greater. (Earlier versions of pandoc have integrated citeproc support.)


The pandoc-citeproc executable can be used as a filter with pandoc to resolve and format citations using a bibliography file and a CSL stylesheet. It can also be used (with --bib2yaml or --bib2json options) to convert a bibliography to a YAML format that can be put directly into a pandoc markdown document or to CSL JSON. Bibliographies can be in any of several formats, but bibtex and biblatex are the best supported.

For usage and further details, see the pandoc-citeproc man page.

The current version of the package includes code from citeproc-hs, which has not been updated for some time. When citeproc-hs is brought up to date, this code can be removed and this package will depend on citeproc-hs.


Those who use pandoc as a library (e.g. in a web application) will need to use this module to process citations.

The module exports two functions, processCites, which is pure and accepts a style and a list of references as arguments, and processCites', which lives in the IO monad and derives the style and references from the document’s metadata.