pandoc-citeproc: Supports using pandoc with citeproc

[ bsd3, library, program, text ] [ Propose Tags ]

The pandoc-citeproc library supports automatic generation of citations and a bibliography in pandoc documents using the Citation Style Language (CSL) macro language. More details on CSL can be found at

In addition to a library, the package includes an executable, pandoc-citeproc, which works as a pandoc filter and also has a mode for converting bibliographic databases into CSL JSON and pandoc YAML metadata formats.

pandoc-citeproc originated as a fork of Andrea Rossato's citeproc-hs.

[Skip to Readme]
Versions [faq] 0.1, 0.1.1,,, 0.1.2,, 0.2, 0.3,, 0.3.1, 0.4,, 0.5, 0.6,, 0.7,,, 0.7.1,, 0.7.2, 0.7.3,, 0.7.4, 0.8,, 0.8.1,,,, 0.9, 0.9.1,, 0.10, 0.10.1,,,,, 0.10.2,,, 0.10.3, 0.10.4,, 0.10.5,, 0.11, 0.11.1,,,, 0.12, 0.12.1,, 0.12.2,,,,,, 0.13,, 0.14, 0.14.1,,,,,, 0.14.2, 0.14.3,, 0.14.4, 0.14.5, 0.14.6, 0.14.7, 0.14.8,, 0.15,, 0.16,,, 0.16.1,,,, 0.16.2, 0.16.3,, 0.16.4,, 0.17,,
Change log changelog
Dependencies aeson (>=0.7 && <1.5), aeson-pretty (>=0.8), attoparsec, base (==4.*), base-compat (>=0.9), bytestring, containers (>=0.4), data-default, directory, file-embed (==0.0.*), filepath, hs-bibutils (>=6.4), HsYAML (==0.2.*), HsYAML-aeson (==0.2.*), libyaml, mtl, network (<3.2), old-locale, pandoc (>=2.8 && <2.10), pandoc-citeproc, pandoc-types (==1.20.*), parsec, pretty-show, process, rfc5051 (==0.1.*), safe, semigroups (==0.18.*), setenv (==0.1.*), split, syb, tagsoup, temporary (>=1.1), text, text-icu, time, unordered-containers (==0.2.*), vector (>=0.10), xml-conduit (>=1.2 && <1.10), yaml (>=0.11) [details]
License BSD-3-Clause
Author John MacFarlane, Andrea Rossato
Revised Revision 1 made by phadej at 2020-08-30T17:41:02Z
Category Text
Home page
Source repo head: git clone git://
Uploaded by JohnMacFarlane at 2020-02-16T05:50:56Z
Distributions Arch:, Debian:, Fedora:, FreeBSD:, LTSHaskell:, NixOS:, Stackage:0.16.2, openSUSE:
Executables test-citeproc, pandoc-citeproc
Downloads 90531 total (615 in the last 30 days)
Rating 2.0 (votes: 1) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs available [build log]
Last success reported on 2020-02-16 [all 1 reports]


[Index] [Quick Jump]



Use Chris Putnam's Bibutils.


Embed locale files into the library (needed for windows packaging)


Use Haskell bindings to the International Components for Unicode (ICU) libraries


Build the test-citeproc program


Turn on debug tracing.


Use static linking.


Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info


Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

For package maintainers and hackage trustees

Readme for pandoc-citeproc-0.17

[back to package description]



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.