Fixed #9645 -- Work around a backwards-incompatibility in Sphinx so that
various combinations of released docutils and sphinx versions all work together. Thanks, Ramiro Morales. git-svn-id: http://code.djangoproject.com/svn/django/trunk@9586 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
d1102d63e6
commit
e8707e068d
|
@ -131,8 +131,7 @@ class DjangoHTMLTranslator(sphinx.htmlwriter.SmartyPantsHTMLTranslator):
|
||||||
# Give each section a unique ID -- nice for custom CSS hooks
|
# Give each section a unique ID -- nice for custom CSS hooks
|
||||||
# This is different on docutils 0.5 vs. 0.4...
|
# This is different on docutils 0.5 vs. 0.4...
|
||||||
|
|
||||||
# The docutils 0.4 override.
|
if hasattr(sphinx.htmlwriter.SmartyPantsHTMLTranslator, 'start_tag_with_title') and sphinx.__version__ == '0.4.2':
|
||||||
if hasattr(sphinx.htmlwriter.SmartyPantsHTMLTranslator, 'start_tag_with_title'):
|
|
||||||
def start_tag_with_title(self, node, tagname, **atts):
|
def start_tag_with_title(self, node, tagname, **atts):
|
||||||
node = {
|
node = {
|
||||||
'classes': node.get('classes', []),
|
'classes': node.get('classes', []),
|
||||||
|
@ -140,11 +139,12 @@ class DjangoHTMLTranslator(sphinx.htmlwriter.SmartyPantsHTMLTranslator):
|
||||||
}
|
}
|
||||||
return self.starttag(node, tagname, **atts)
|
return self.starttag(node, tagname, **atts)
|
||||||
|
|
||||||
# The docutils 0.5 override.
|
|
||||||
else:
|
else:
|
||||||
def visit_section(self, node):
|
def visit_section(self, node):
|
||||||
old_ids = node.get('ids', [])
|
old_ids = node.get('ids', [])
|
||||||
node['ids'] = ['s-' + i for i in old_ids]
|
node['ids'] = ['s-' + i for i in old_ids]
|
||||||
|
if sphinx.__version__ != '0.4.2':
|
||||||
|
node['ids'].extend(old_ids)
|
||||||
sphinx.htmlwriter.SmartyPantsHTMLTranslator.visit_section(self, node)
|
sphinx.htmlwriter.SmartyPantsHTMLTranslator.visit_section(self, node)
|
||||||
node['ids'] = old_ids
|
node['ids'] = old_ids
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue