New Domains

Classes and methods to maintain any bibtex information that is stored outside the doctree.

class sphinxcontrib.bibtex.domain.Citation(citation_id: str, bibliography_key: BibliographyKey, key: str, entry: Entry, formatted_entry: FormattedEntry)[source]

Information about a citation.

property bibliography_key

Key of its bibliography directive.

property citation_id

Unique id of this citation.

property entry

Entry from pybtex.

property formatted_entry

Entry as formatted by pybtex.

property key

Key (with prefix).

class sphinxcontrib.bibtex.domain.SphinxReferenceInfo(builder: Builder, fromdocname: str, todocname: str, citation_id: str)[source]

Tuple containing reference info to enable sphinx to resolve a reference to a citation.

property builder

The Sphinx builder.

property citation_id

Unique id of the citation within the bibliography.

property fromdocname

Document name of the citation reference.

property todocname

Document name of the bibliography.

class sphinxcontrib.bibtex.domain.SphinxReferenceText(info: sphinxcontrib.bibtex.richtext.ReferenceInfo, *parts: pybtex.richtext.BaseText)[source]

Pybtex rich text class for citation references with the docutils backend, for use with SphinxReferenceInfo.

render(backend: BaseBackend)[source]

Render this Text into markup.

Parameters

backend – The formatting backend (an instance of pybtex.backends.BaseBackend).

class sphinxcontrib.bibtex.domain.BibtexDomain(env: BuildEnvironment)[source]

Sphinx domain for the bibtex extension.

property bibfiles: Dict[str, sphinxcontrib.bibtex.bibfile.BibFile]

Map each bib filename to some information about the file (including the parsed data).

property bibliographies: Dict[BibliographyKey, BibliographyValue]

Map storing information about each bibliography directive.

property citation_refs: List[CitationRef]

Citation reference data.

property citations: List[sphinxcontrib.bibtex.domain.Citation]

Citation data.

clear_doc(docname: str)None[source]

Remove traces of a document in the domain-specific inventories.

get_all_cited_keys(docnames)[source]

Yield all citation keys for given docnames in order, then ordered by citation order.

get_entries(bibfiles: List[str])Iterable[Entry][source]

Return all bibliography entries from the bib files, unsorted (i.e. in order of appearance in the bib files.

get_filtered_entries(bibliography_key: BibliographyKey)Iterable[Tuple[str, Entry]][source]

Return unsorted bibliography entries filtered by the filter expression.

get_formatted_entries(bibliography_key: BibliographyKey, docnames: List[str])Iterable[Tuple[Entry, FormattedEntry]][source]

Get sorted bibliography entries along with their pybtex labels, with additional sorting and formatting applied from the pybtex style.

get_sorted_entries(bibliography_key: BibliographyKey, docnames: List[str])Iterable[Tuple[str, Entry]][source]

Return filtered bibliography entries sorted by citation order.

merge_domaindata(docnames: List[str], otherdata: Dict)None[source]

Merge in data regarding docnames from a different domaindata inventory (coming from a subprocess in parallel builds).

resolve_any_xref(env: BuildEnvironment, fromdocname: str, builder: Builder, target: str, node: pending_xref, contnode: docutils.nodes.Element)List[Tuple[str, docutils.nodes.Element]][source]

Replace node by list of citation references (one for each key), provided that the target has citation keys.

resolve_xref(env: BuildEnvironment, fromdocname: str, builder: Builder, typ: str, target: str, node: pending_xref, contnode: docutils.nodes.Element)docutils.nodes.Element[source]

Replace node by list of citation references (one for each key).