summaryrefslogtreecommitdiff
path: root/sphinx/ext/linkcode.py
diff options
context:
space:
mode:
Diffstat (limited to 'sphinx/ext/linkcode.py')
-rw-r--r--sphinx/ext/linkcode.py22
1 files changed, 10 insertions, 12 deletions
diff --git a/sphinx/ext/linkcode.py b/sphinx/ext/linkcode.py
index 843b64efb..3ebdf7bc9 100644
--- a/sphinx/ext/linkcode.py
+++ b/sphinx/ext/linkcode.py
@@ -1,4 +1,3 @@
-# -*- coding: utf-8 -*-
"""
sphinx.ext.linkcode
~~~~~~~~~~~~~~~~~~~
@@ -35,16 +34,16 @@ def doctree_read(app, doctree):
raise LinkcodeError(
"Function `linkcode_resolve` is not given in conf.py")
- domain_keys = dict(
- py=['module', 'fullname'],
- c=['names'],
- cpp=['names'],
- js=['object', 'fullname'],
- )
+ domain_keys = {
+ 'py': ['module', 'fullname'],
+ 'c': ['names'],
+ 'cpp': ['names'],
+ 'js': ['object', 'fullname'],
+ }
for objnode in doctree.traverse(addnodes.desc):
domain = objnode.get('domain')
- uris = set() # type: Set[unicode]
+ uris = set() # type: Set[str]
for signode in objnode:
if not isinstance(signode, addnodes.desc_signature):
continue
@@ -70,15 +69,14 @@ def doctree_read(app, doctree):
continue
uris.add(uri)
+ inline = nodes.inline('', _('[source]'), classes=['viewcode-link'])
onlynode = addnodes.only(expr='html')
- onlynode += nodes.reference('', '', internal=False, refuri=uri)
- onlynode[0] += nodes.inline('', _('[source]'),
- classes=['viewcode-link'])
+ onlynode += nodes.reference('', '', inline, internal=False, refuri=uri)
signode += onlynode
def setup(app):
- # type: (Sphinx) -> Dict[unicode, Any]
+ # type: (Sphinx) -> Dict[str, Any]
app.connect('doctree-read', doctree_read)
app.add_config_value('linkcode_resolve', None, '')
return {'version': sphinx.__display_version__, 'parallel_read_safe': True}