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, title: 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 title

Title attribute for reference node.

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).