mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
fix bugs.
This commit is contained in:
@@ -65,6 +65,8 @@ class ObjectDescription(Directive):
|
||||
'module': directives.unchanged,
|
||||
}
|
||||
|
||||
# XXX make this more domain specific
|
||||
|
||||
doc_fields_with_arg = {
|
||||
'param': '%param',
|
||||
'parameter': '%param',
|
||||
|
||||
@@ -72,7 +72,7 @@ class EnvVarXRefRole(XRefRole):
|
||||
Cross-referencing role for environment variables (adds an index entry).
|
||||
"""
|
||||
|
||||
def result_nodes(self, env, node, is_ref):
|
||||
def result_nodes(self, document, env, node, is_ref):
|
||||
if not is_ref:
|
||||
return [node], []
|
||||
varname = node['reftarget']
|
||||
@@ -83,7 +83,7 @@ class EnvVarXRefRole(XRefRole):
|
||||
('single', _('environment variable; %s') % varname, tgtid, varname)
|
||||
]
|
||||
targetnode = nodes.target('', '', ids=[tgtid])
|
||||
inliner.document.note_explicit_target(targetnode)
|
||||
document.note_explicit_target(targetnode)
|
||||
return [indexnode, targetnode, node], []
|
||||
|
||||
|
||||
|
||||
@@ -85,14 +85,15 @@ class XRefRole(object):
|
||||
if self.fix_parens:
|
||||
text, _ = self._fix_parens(env, False, text[1:], "")
|
||||
innernode = self.innernodeclass(rawtext, text, classes=['xref'])
|
||||
return self.return_nodes(env, innernode, is_ref=False)
|
||||
return self.result_nodes(inliner.document, env, innernode,
|
||||
is_ref=False)
|
||||
# split title and target in role content
|
||||
has_explicit_title, title, target = split_explicit_title(text)
|
||||
# fix-up title and target
|
||||
if self.lowercase:
|
||||
target = target.lower()
|
||||
if self.fix_parens:
|
||||
title, target = self.fix_parens(
|
||||
title, target = self._fix_parens(
|
||||
env, has_explicit_title, title, target)
|
||||
# create the reference node
|
||||
refnode = self.nodeclass(rawtext, reftype=role, refdomain=domain,
|
||||
@@ -105,14 +106,14 @@ class XRefRole(object):
|
||||
refnode['reftarget'] = target
|
||||
refnode += self.innernodeclass(rawtext, title, classes=['xref'])
|
||||
# result_nodes allow further modification of return values
|
||||
return self.result_nodes(env, refnode, is_ref=True)
|
||||
return self.result_nodes(inliner.document, env, refnode, is_ref=True)
|
||||
|
||||
# methods that can be overwritten
|
||||
|
||||
def process_link(self, env, refnode, has_explicit_title, title, target):
|
||||
return title, ws_re.sub(' ', target)
|
||||
|
||||
def result_nodes(self, env, node, is_ref):
|
||||
def result_nodes(self, document, env, node, is_ref):
|
||||
return [node], []
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user