kausalflow/lightkone / components/bibtex-export/versions/1/symbolon.toml
· raw
[contract]
id = "lightkone/bibtex-export"
version = 1
title = "Write a lightkone paper as a BibTeX entry"
description = """
Writes one paper as the BibTeX entry lightkone puts in library.bib and in
the .bib files it syncs for Overleaf. The output must match byte for byte,
because those files are diffed and committed.
Shape:
@<type>{<key>,
<name> = {<value>},
...
<name> = {<value>}
}
followed by a newline. Each field line is two spaces, the field name padded
with spaces to the length of the longest name in the entry, " = {", the
value, and "}"; lines are joined by ",\\n". type is "misc" when empty.
Fields, in this order, each written only when its value is present and not
empty:
title always written, wrapped in an extra pair of braces: {{Title}}
author authors joined by " and "; an author containing a comma, or
exactly "others", is written as is, any other is wrapped in
braces so BibTeX keeps it whole: {LIGO Collaboration}
year the number
journal the venue, or booktitle instead when type is "inproceedings" or
"incollection"; left out when fields already has a non-empty
value under that name
doi
eprint, archiveprefix the arxiv id and "arXiv", when arxiv is present
url
abstract
keywords tags joined by ";"
file
then every entry of fields in its given order, except names that start
with "lightkone-" (private to lightkone). Names are not deduplicated.
Escaping: in title, venue and abstract, every & % or # not already preceded
by a backslash gets one. Nothing else is escaped or changed.
"""
regenerability = "disposable"
license = "Proprietary (kausalflow)"
authors = ["kausalflow/lightkone"]
[entrypoint]
function = "run"
[requires]
network = []
credentials = []
state = []
permissions = []
[spec]
seed = 0
max_examples = 200
timeout_seconds = 300