Skip to main content

BlackStyle

Format according to “Tame the BeaST” by Nicolas Markey, Oct. 2009.

  • @TYPE{citekey, key = {value}, ...}, This will be loaded as bib-entry of type TYPE

  • @string{key = {value}, ...}

  • @preamble{value}

Functions

loads

Loads the raw bytes of a bibtex-file into a dictionary and makes only minimal assumptions on the structrue but not on the content.

normalize

Takes the raw bib-dictionary and tries to decode and normalize it. All optionally. It strips away leading, trailing, and consecutive whitespaces. It converts all keys, entrytypes, and citekyes to lowercase. It decodes keys and/or values to ‘’ascii’’.

dumps

Dumps a normalized (all ascii string) bib-dictionary into a bib-file-string.

Example

import minimal_bibtex_io as mbib

# Read bytes, make no assumptions on keys or encoding
with open("minimal_bibtex_io/tests/resources/example.bib", "rb") as f:
    rawbib = mbib.loads(f.read())

# Try to decode to ascii and set keys to lower case
bib = mbib.normalize(rawbib)

entry = {"type": "book", "citekey": "kasperle1887", "fields": {}}
entry["fields"]["title"] = "The hills are green"
entry["fields"]["year"] = 1887
entry["fields"]["whateverkeyiwant"] = "This is only relevant for me."
bib["entries"].append(entry)

# eventually ...
with open("my.bib", "wt") as f:
    f.write(mbib.dumps(bib, indent=4, width=79))

Metadata

Release files for minimal-bibtex-io-sebastian-achim-mueller 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for minimal-bibtex-io-sebastian-achim-mueller 0.0.3
File Interpreter ABI Platform
minimal_bibtex_io_sebastian_achim_mueller-0.0.3-py2.py3-none-any.whl Python 2, Python 3 none any Details

Release files / minimal_bibtex_io_sebastian_achim_mueller-0.0.3-py2.py3-none-any.whl

Download URL minimal_bibtex_io_sebastian_achim_mueller-0.0.3-py2.py3-none-any.whl
Size 7.7 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
d15c121c57a6999abb82809639c5e829eb7083c12ac96857c644f8797eddf65d
BLAKE2b-256 checksum
How to use checksums
8f7fdb8171d63a218b059caf1976d5ab5fe094df797b43a30a5dc6fbb88d72f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.5.0.1 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.7.4

Release history Release notifications | RSS feed

This release

0.0.3 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page