summaryrefslogtreecommitdiffstats
path: root/common/sphinxcontrib/bibtex/roles.py
diff options
context:
space:
mode:
Diffstat (limited to 'common/sphinxcontrib/bibtex/roles.py')
-rw-r--r--common/sphinxcontrib/bibtex/roles.py43
1 files changed, 0 insertions, 43 deletions
diff --git a/common/sphinxcontrib/bibtex/roles.py b/common/sphinxcontrib/bibtex/roles.py
deleted file mode 100644
index bbbd1f0..0000000
--- a/common/sphinxcontrib/bibtex/roles.py
+++ /dev/null
@@ -1,43 +0,0 @@
-"""
- New Doctree Roles
- ~~~~~~~~~~~~~~~~~
-
- .. autoclass:: CiteRole
- :show-inheritance:
-
- .. automethod:: result_nodes
-"""
-
-from pybtex.plugin import find_plugin
-import pybtex.database
-from sphinx.roles import XRefRole # for :cite:
-
-
-class CiteRole(XRefRole):
-
- """Class for processing the :rst:role:`cite` role."""
- backend = find_plugin('pybtex.backends', 'docutils')()
-
- def result_nodes(self, document, env, node, is_ref):
- """Transform reference node into a citation reference,
- and note that the reference was cited.
- """
- keys = node['reftarget'].split(',')
- # Note that at this point, usually, env.bibtex_cache.bibfiles
- # is still empty because the bibliography directive may not
- # have been processed yet, so we cannot get the actual entry.
- # Instead, we simply fake an entry with the desired key, and
- # fix the label at doctree-resolved time. This happens in
- # process_citation_references.
- refnodes = [
- self.backend.citation_reference(_fake_entry(key), document)
- for key in keys]
- for key in keys:
- env.bibtex_cache.add_cited(key, env.docname)
- return refnodes, []
-
-
-def _fake_entry(key):
- entry = pybtex.database.Entry(type_="")
- entry.key = key
- return entry