#literate-programming #bibtex #markdown #bibliography #plugin

app yarner-bib

A Yarner plugin for citations using a BibTeX bibliograph

2 releases

0.1.2 Mar 6, 2021
0.1.1 Mar 4, 2021

#14 in #literate-programming

MIT license

28KB
663 lines

yarner-bib

Test status GitHub Crate MIT license

A Yarner plugin for citations using a BibTeX bibliography.

Example:

Here is a Markdown source with citations and a placeholder for the references:

## Yarner-bib example

Yarner is a command line tool for Literate Programming (@Knuth1984).
Another famous Literate Programming environment is RMarkdown (@Baumer2015).

## References

[[_REFS_]]

After processing with Yarner and yarner-bib, it produces this output:

Yarner-bib example

Yarner is a command line tool for Literate Programming (Knuth 1984). Another famous Literate Programming environment is RMarkdown (Baumer & Udwin 2015).

References

Baumer B, Udwin D (2015): R Markdown. WIREs Computational Statistics 7:3, 167-177.

Knuth DE (1984): Literate Programming. The Computer Journal 27:2, 97-111.

Installation

Binaries

  1. Download the latest binaries for your platform
  2. Unzip somewhere
  3. Add the parent directory of the executable to your PATH environmental variable

Using cargo

> cargo install yarner-bib

Usage

Add a section plugin.bib to your Yarner.toml:

[plugin.bib]
...

Cite using the BibTeX citation key, prefixed with @:

For details, see @Doe2020.

To generate the reference list, place the placeholder in each file, or in the file given under refs-file:

## References

[[_REFS_]]

Options

The plugin allows for different options, which are all optional:

[plugin.bib]
bibliography = "bibliography.bib"
style = "author-year"
refs-file = "References.md"
placeholder = "[[_REFS_]]"
link-refs = true
render-key = true
Option Details Default
bibliography The BibTeX file to use. bibliography.bib
style The citation style. Either author-year or numbered. author-year
refs-file The Markdown file for central references. References in each file if not given. none
placeholder The placeholder to replace by the list of references [[_REFS_]]
link-refs Add links from citations to references. true
render-key Render the citation key in front of each reference. true

Dependencies

~10MB
~201K SLoC