Citations and bibliography formatter
Project description
citeproc-py is a CSL processor for Python. It aims to implement the CSL 1.0.1 specification. citeproc-py can output styled citations and bibliographies in a number of different output formats. Currently supported are plain text, reStructuredText and HTML. Other formats can be added easily.
citeproc-py uses semantic versioning. Currently, its major version number is still at 0, meaning the API is not yet stable. However, you should not expect to see any major API changes soon.
Requirements
citeproc-py has been developed for Python 3 but also runs on Python 2.6+. It depends on lxml for parsing and navigating the CSL style and locale files.
Getting Started
To get started with citeproc-py, take a look at the examples under examples/. Two examples are provided, one parsing references from a JSON representation of references as supported by citeproc-js, another parsing the references from a BibTeX file. Both show and explain how to cite references and render the bibliography.
CSL Compatibility
Currently, citeproc-py passes almost 60% of the (relevant) tests in the citeproc-test suite. However, it is more than 60% complete, as citeproc-py doesn’t take care of double spaces and repeated punctuation marks yet, making a good deal of the tests fail. In addition, the following features have not yet been implemented (there are probably some I forgot though):
disambiguation/year-suffix
et-al-subsequent-min/et-al-subsequent-use-first
collapsing
punctuation-in-quote
display
Also, some citeproc-js functionality that is not part of the CSL spec is not (yet) supported:
raw dates
static-ordering
literal names
Running the Tests
First clone the citeproc-test suite so that it sits next to the citeproc-py directory. Then run the processor.py script to generate the test fixtures (using Python 2.x). After that, you can run citeproc-test.py (in the tests directory). Run citeproc-test.py --help to see its usage information.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for citeproc_py-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 51ecb6d060e84578645b00fefed358385d3a350c72995451a114b5c355c7ca98 |
|
MD5 | c623f1823af2b0831dbd3ff62e0b8456 |
|
BLAKE2b-256 | 5d2d4d546285fec631e3018ca88aa12daa9b04e65d1b2267265addf713769610 |
Hashes for citeproc_py-0.2.0-py2-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 26a17fce814d6828ba4b696c63dc0171ecdba984f9f0fe3892368a1c75ba11dc |
|
MD5 | c684f0cf92bb787eba8158d62c26fdcf |
|
BLAKE2b-256 | abf48b6229a42c8307b092bf0a41f79417097862711d81a9e6104462d0709fd8 |