summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTakeshi KOMIYA <i.tkomiya@gmail.com>2018-11-28 01:57:48 +0900
committerTakeshi KOMIYA <i.tkomiya@gmail.com>2018-11-28 01:58:32 +0900
commit31c4d06a22e92d28f94200063a3921b688e330c2 (patch)
tree21777fb0c6c102a0533eab65d40e700e79ea0c4e
parentc76885631ddf9edbf4e6edcc37ebc29e3e583627 (diff)
downloadsphinx-git-31c4d06a22e92d28f94200063a3921b688e330c2.tar.gz
refactor: Use super() to call methods of superclass
-rw-r--r--sphinx/addnodes.py8
-rw-r--r--sphinx/builders/_epub_base.py8
-rw-r--r--sphinx/builders/devhelp.py2
-rw-r--r--sphinx/builders/gettext.py8
-rw-r--r--sphinx/builders/html.py8
-rw-r--r--sphinx/builders/htmlhelp.py4
-rw-r--r--sphinx/builders/qthelp.py2
-rw-r--r--sphinx/directives/code.py2
-rw-r--r--sphinx/directives/other.py4
-rw-r--r--sphinx/directives/patches.py10
-rw-r--r--sphinx/domains/__init__.py2
-rw-r--r--sphinx/domains/cpp.py4
-rw-r--r--sphinx/domains/python.py4
-rw-r--r--sphinx/ext/autodoc/__init__.py33
-rw-r--r--sphinx/ext/doctest.py2
-rw-r--r--sphinx/io.py8
-rw-r--r--sphinx/parsers.py4
-rw-r--r--sphinx/roles.py4
-rw-r--r--sphinx/transforms/__init__.py6
-rw-r--r--sphinx/util/docutils.py2
-rw-r--r--sphinx/util/stemmer/__init__.py4
-rw-r--r--sphinx/writers/html.py30
-rw-r--r--sphinx/writers/html5.py20
-rw-r--r--sphinx/writers/manpage.py8
-rw-r--r--sphinx/writers/text.py2
-rw-r--r--sphinx/writers/xml.py2
26 files changed, 93 insertions, 98 deletions
diff --git a/sphinx/addnodes.py b/sphinx/addnodes.py
index 1a24057bc..5d45aa44d 100644
--- a/sphinx/addnodes.py
+++ b/sphinx/addnodes.py
@@ -127,7 +127,7 @@ class desc_returns(desc_type):
"""Node for a "returns" annotation (a la -> in Python)."""
def astext(self):
# type: () -> unicode
- return ' -> ' + nodes.TextElement.astext(self)
+ return ' -> ' + super(desc_returns, self).astext()
class desc_name(nodes.Part, nodes.Inline, nodes.FixedTextElement):
@@ -149,7 +149,7 @@ class desc_optional(nodes.Part, nodes.Inline, nodes.FixedTextElement):
def astext(self):
# type: () -> unicode
- return '[' + nodes.TextElement.astext(self) + ']'
+ return '[' + super(desc_optional, self).astext() + ']'
class desc_annotation(nodes.Part, nodes.Inline, nodes.FixedTextElement):
@@ -209,7 +209,7 @@ class math(nodes.math):
RemovedInSphinx30Warning, stacklevel=2)
return self.astext()
else:
- return nodes.math.__getitem__(self, key)
+ return super(math, self).__getitem__(key)
class math_block(nodes.math_block):
@@ -228,7 +228,7 @@ class math_block(nodes.math_block):
RemovedInSphinx30Warning, stacklevel=2)
return self.astext()
else:
- return nodes.math_block.__getitem__(self, key)
+ return super(math_block, self).__getitem__(key)
class displaymath(math_block):
diff --git a/sphinx/builders/_epub_base.py b/sphinx/builders/_epub_base.py
index 300ce602e..65c9f494c 100644
--- a/sphinx/builders/_epub_base.py
+++ b/sphinx/builders/_epub_base.py
@@ -152,7 +152,7 @@ class EpubBuilder(StandaloneHTMLBuilder):
def init(self):
# type: () -> None
- StandaloneHTMLBuilder.init(self)
+ super(EpubBuilder, self).init()
# the output files for epub must be .html only
self.out_suffix = '.xhtml'
self.link_suffix = '.xhtml'
@@ -372,7 +372,7 @@ class EpubBuilder(StandaloneHTMLBuilder):
"""
self.fix_ids(doctree)
self.add_visible_links(doctree, self.config.epub_show_urls)
- StandaloneHTMLBuilder.write_doc(self, docname, doctree)
+ super(EpubBuilder, self).write_doc(docname, doctree)
def fix_genindex(self, tree):
# type: (nodes.Node) -> None
@@ -470,8 +470,8 @@ class EpubBuilder(StandaloneHTMLBuilder):
return
self.fix_genindex(addctx['genindexentries'])
addctx['doctype'] = self.doctype
- StandaloneHTMLBuilder.handle_page(self, pagename, addctx, templatename,
- outfilename, event_arg)
+ super(EpubBuilder, self).handle_page(pagename, addctx, templatename,
+ outfilename, event_arg)
def build_mimetype(self, outdir, outname):
# type: (unicode, unicode) -> None
diff --git a/sphinx/builders/devhelp.py b/sphinx/builders/devhelp.py
index d6acefb6d..db7399a48 100644
--- a/sphinx/builders/devhelp.py
+++ b/sphinx/builders/devhelp.py
@@ -63,7 +63,7 @@ class DevhelpBuilder(StandaloneHTMLBuilder):
def init(self):
# type: () -> None
- StandaloneHTMLBuilder.init(self)
+ super(DevhelpBuilder, self).init()
self.out_suffix = '.html'
self.link_suffix = '.html'
diff --git a/sphinx/builders/gettext.py b/sphinx/builders/gettext.py
index 0f7d51d0d..a8fcca5ac 100644
--- a/sphinx/builders/gettext.py
+++ b/sphinx/builders/gettext.py
@@ -121,7 +121,7 @@ class I18nBuilder(Builder):
def init(self):
# type: () -> None
- Builder.init(self)
+ super(I18nBuilder, self).init()
self.env.set_versioning_method(self.versioning_method,
self.env.config.gettext_uuid)
self.tags = I18nTags()
@@ -222,7 +222,7 @@ class MessageCatalogBuilder(I18nBuilder):
def init(self):
# type: () -> None
- I18nBuilder.init(self)
+ super(MessageCatalogBuilder, self).init()
self.create_template_bridge()
self.templates.init(self)
@@ -261,11 +261,11 @@ class MessageCatalogBuilder(I18nBuilder):
def build(self, docnames, summary=None, method='update'):
# type: (Iterable[unicode], unicode, unicode) -> None
self._extract_from_template()
- I18nBuilder.build(self, docnames, summary, method)
+ super(MessageCatalogBuilder, self).build(docnames, summary, method)
def finish(self):
# type: () -> None
- I18nBuilder.finish(self)
+ super(MessageCatalogBuilder, self).finish()
data = {
'version': self.config.version,
'copyright': self.config.copyright,
diff --git a/sphinx/builders/html.py b/sphinx/builders/html.py
index f045ef068..f1c658f7a 100644
--- a/sphinx/builders/html.py
+++ b/sphinx/builders/html.py
@@ -1213,7 +1213,7 @@ class DirectoryHTMLBuilder(StandaloneHTMLBuilder):
def prepare_writing(self, docnames):
# type: (Iterable[unicode]) -> None
- StandaloneHTMLBuilder.prepare_writing(self, docnames)
+ super(DirectoryHTMLBuilder, self).prepare_writing(docnames)
self.globalcontext['no_search_suffix'] = True
@@ -1477,7 +1477,7 @@ class SerializingHTMLBuilder(StandaloneHTMLBuilder):
self.dump_context(self.globalcontext, outfilename)
# super here to dump the search index
- StandaloneHTMLBuilder.handle_finish(self)
+ super(SerializingHTMLBuilder, self).handle_finish()
# copy the environment file from the doctree dir to the output dir
# as needed by the web app
@@ -1525,10 +1525,6 @@ class JSONHTMLBuilder(SerializingHTMLBuilder):
globalcontext_filename = 'globalcontext.json'
searchindex_filename = 'searchindex.json'
- def init(self):
- # type: () -> None
- SerializingHTMLBuilder.init(self)
-
def convert_html_css_files(app, config):
# type: (Sphinx, Config) -> None
diff --git a/sphinx/builders/htmlhelp.py b/sphinx/builders/htmlhelp.py
index ce8a8956f..c6c3e0eb3 100644
--- a/sphinx/builders/htmlhelp.py
+++ b/sphinx/builders/htmlhelp.py
@@ -200,7 +200,7 @@ class HTMLHelpBuilder(StandaloneHTMLBuilder):
# the output files for HTML help is .html by default
self.out_suffix = '.html'
self.link_suffix = '.html'
- StandaloneHTMLBuilder.init(self)
+ super(HTMLHelpBuilder, self).init()
# determine the correct locale setting
locale = chm_locales.get(self.config.language)
if locale is not None:
@@ -227,7 +227,7 @@ class HTMLHelpBuilder(StandaloneHTMLBuilder):
if node.get('internal') is None and 'refuri' in node:
node['target'] = '_blank'
- StandaloneHTMLBuilder.write_doc(self, docname, doctree)
+ super(HTMLHelpBuilder, self).write_doc(docname, doctree)
def build_hhx(self, outdir, outname):
# type: (unicode, unicode) -> None
diff --git a/sphinx/builders/qthelp.py b/sphinx/builders/qthelp.py
index 941be76c9..4179a9707 100644
--- a/sphinx/builders/qthelp.py
+++ b/sphinx/builders/qthelp.py
@@ -79,7 +79,7 @@ class QtHelpBuilder(StandaloneHTMLBuilder):
def init(self):
# type: () -> None
- StandaloneHTMLBuilder.init(self)
+ super(QtHelpBuilder, self).init()
# the output files for HTML help must be .html only
self.out_suffix = '.html'
self.link_suffix = '.html'
diff --git a/sphinx/directives/code.py b/sphinx/directives/code.py
index 1d12165d3..19363155a 100644
--- a/sphinx/directives/code.py
+++ b/sphinx/directives/code.py
@@ -63,7 +63,7 @@ class HighlightLang(Highlight):
warnings.warn('highlightlang directive is deprecated. '
'Please use highlight directive instead.',
RemovedInSphinx40Warning, stacklevel=2)
- return Highlight.run(self)
+ return super(HighlightLang, self).run()
def dedent_lines(lines, dedent, location=None):
diff --git a/sphinx/directives/other.py b/sphinx/directives/other.py
index 804577084..dbc1190b5 100644
--- a/sphinx/directives/other.py
+++ b/sphinx/directives/other.py
@@ -383,11 +383,11 @@ class Include(BaseInclude, SphinxDirective):
if self.arguments[0].startswith('<') and \
self.arguments[0].endswith('>'):
# docutils "standard" includes, do not do path processing
- return BaseInclude.run(self)
+ return super(Include, self).run()
rel_filename, filename = self.env.relfn2path(self.arguments[0])
self.arguments[0] = filename
self.env.note_included(filename)
- return BaseInclude.run(self)
+ return super(Include, self).run()
def setup(app):
diff --git a/sphinx/directives/patches.py b/sphinx/directives/patches.py
index ca09cf396..b1104fc97 100644
--- a/sphinx/directives/patches.py
+++ b/sphinx/directives/patches.py
@@ -33,7 +33,7 @@ class Figure(images.Figure):
def run(self):
# type: () -> List[nodes.Node]
name = self.options.pop('name', None)
- result = images.Figure.run(self)
+ result = super(Figure, self).run()
if len(result) == 2 or isinstance(result[0], nodes.system_message):
return result
@@ -55,7 +55,7 @@ class Figure(images.Figure):
class Meta(html.Meta, SphinxDirective):
def run(self):
# type: () -> List[nodes.Node]
- result = html.Meta.run(self)
+ result = super(Meta, self).run()
for node in result:
if (isinstance(node, nodes.pending) and
isinstance(node.details['nodes'][0], html.MetaBody.meta)):
@@ -77,7 +77,7 @@ class RSTTable(tables.RSTTable):
def make_title(self):
# type: () -> Tuple[nodes.title, List[nodes.system_message]]
- title, message = tables.RSTTable.make_title(self)
+ title, message = super(RSTTable, self).make_title()
if title:
set_source_info(self, title)
@@ -91,7 +91,7 @@ class CSVTable(tables.CSVTable):
def make_title(self):
# type: () -> Tuple[nodes.title, List[nodes.system_message]]
- title, message = tables.CSVTable.make_title(self)
+ title, message = super(CSVTable, self).make_title()
if title:
set_source_info(self, title)
@@ -105,7 +105,7 @@ class ListTable(tables.ListTable):
def make_title(self):
# type: () -> Tuple[nodes.title, List[nodes.system_message]]
- title, message = tables.ListTable.make_title(self)
+ title, message = super(ListTable, self).make_title()
if title:
set_source_info(self, title)
diff --git a/sphinx/domains/__init__.py b/sphinx/domains/__init__.py
index 5704b56de..5a5e3e94a 100644
--- a/sphinx/domains/__init__.py
+++ b/sphinx/domains/__init__.py
@@ -245,7 +245,7 @@ class Domain:
def run(self):
# type: () -> List[nodes.Node]
self.name = fullname
- return BaseDirective.run(self)
+ return super(DirectiveAdapter, self).run()
self._directive_cache[name] = DirectiveAdapter
return DirectiveAdapter
diff --git a/sphinx/domains/cpp.py b/sphinx/domains/cpp.py
index fef62c2bd..86e2c2c6b 100644
--- a/sphinx/domains/cpp.py
+++ b/sphinx/domains/cpp.py
@@ -3619,7 +3619,7 @@ class Symbol:
if key == "children":
assert False
else:
- return object.__setattr__(self, key, value)
+ return super(Symbol, self).__setattr__(key, value)
def __init__(self,
parent, # type: Symbol
@@ -6312,7 +6312,7 @@ class CPPObject(ObjectDescription):
symbol = parentSymbol.add_name(name)
env.temp_data['cpp:last_symbol'] = symbol
return []
- return ObjectDescription.run(self)
+ return super(CPPObject, self).run()
def handle_signature(self, sig, signode):
# type: (unicode, addnodes.desc_signature) -> Any
diff --git a/sphinx/domains/python.py b/sphinx/domains/python.py
index 8320f83de..6769bafad 100644
--- a/sphinx/domains/python.py
+++ b/sphinx/domains/python.py
@@ -559,7 +559,7 @@ class PyDecoratorFunction(PyDecoratorMixin, PyModulelevel):
# type: () -> List[nodes.Node]
# a decorator function is a function after all
self.name = 'py:function'
- return PyModulelevel.run(self)
+ return super(PyDecoratorFunction, self).run()
class PyDecoratorMethod(PyDecoratorMixin, PyClassmember):
@@ -569,7 +569,7 @@ class PyDecoratorMethod(PyDecoratorMixin, PyClassmember):
def run(self):
# type: () -> List[nodes.Node]
self.name = 'py:method'
- return PyClassmember.run(self)
+ return super(PyDecoratorMethod, self).run()
class PyModule(SphinxDirective):
diff --git a/sphinx/ext/autodoc/__init__.py b/sphinx/ext/autodoc/__init__.py
index 607c71612..0dd92b983 100644
--- a/sphinx/ext/autodoc/__init__.py
+++ b/sphinx/ext/autodoc/__init__.py
@@ -802,7 +802,7 @@ class ModuleDocumenter(Documenter):
def parse_name(self):
# type: () -> bool
- ret = Documenter.parse_name(self)
+ ret = super(ModuleDocumenter, self).parse_name()
if self.args or self.retann:
logger.warning(__('signature arguments or return annotation '
'given for automodule %s') % self.fullname,
@@ -964,7 +964,7 @@ class DocstringSignatureMixin:
lines = getattr(self, '_new_docstrings', None)
if lines is not None:
return lines
- return Documenter.get_doc(self, None, ignore) # type: ignore
+ return super(DocstringSignatureMixin, self).get_doc(None, ignore) # type: ignore
def format_signature(self):
# type: () -> unicode
@@ -974,7 +974,7 @@ class DocstringSignatureMixin:
result = self._find_signature()
if result is not None:
self.args, self.retann = result
- return Documenter.format_signature(self) # type: ignore
+ return super(DocstringSignatureMixin, self).format_signature() # type: ignore
class DocstringStripSignatureMixin(DocstringSignatureMixin):
@@ -993,7 +993,7 @@ class DocstringStripSignatureMixin(DocstringSignatureMixin):
# DocstringSignatureMixin.format_signature.
# Documenter.format_signature use self.args value to format.
_args, self.retann = result
- return Documenter.format_signature(self) # type: ignore
+ return super(DocstringStripSignatureMixin, self).format_signature()
class FunctionDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # type: ignore
@@ -1071,7 +1071,7 @@ class ClassDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # type:
def import_object(self):
# type: () -> Any
- ret = ModuleLevelDocumenter.import_object(self)
+ ret = super(ClassDocumenter, self).import_object()
# if the class is documented under another name, document it
# as data/attribute
if ret:
@@ -1103,13 +1103,13 @@ class ClassDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # type:
if self.doc_as_attr:
return ''
- return DocstringSignatureMixin.format_signature(self)
+ return super(ClassDocumenter, self).format_signature()
def add_directive_header(self, sig):
# type: (unicode) -> None
if self.doc_as_attr:
self.directivetype = 'attribute'
- Documenter.add_directive_header(self, sig)
+ super(ClassDocumenter, self).add_directive_header(sig)
# add inheritance info, if wanted
if not self.doc_as_attr and self.options.show_inheritance:
@@ -1179,16 +1179,15 @@ class ClassDocumenter(DocstringSignatureMixin, ModuleLevelDocumenter): # type:
classname = str(module) + u'.' + str(classname)
content = ViewList(
[_('alias of :class:`%s`') % classname], source='')
- ModuleLevelDocumenter.add_content(self, content,
- no_docstring=True)
+ super(ClassDocumenter, self).add_content(content, no_docstring=True)
else:
- ModuleLevelDocumenter.add_content(self, more_content)
+ super(ClassDocumenter, self).add_content(more_content)
def document_members(self, all_members=False):
# type: (bool) -> None
if self.doc_as_attr:
return
- ModuleLevelDocumenter.document_members(self, all_members)
+ super(ClassDocumenter, self).document_members(all_members)
def generate(self, more_content=None, real_modname=None,
check_module=False, all_members=False):
@@ -1236,7 +1235,7 @@ class DataDocumenter(ModuleLevelDocumenter):
def add_directive_header(self, sig):
# type: (unicode) -> None
- ModuleLevelDocumenter.add_directive_header(self, sig)
+ super(DataDocumenter, self).add_directive_header(sig)
sourcename = self.get_sourcename()
if not self.options.annotation:
try:
@@ -1277,7 +1276,7 @@ class MethodDocumenter(DocstringSignatureMixin, ClassLevelDocumenter): # type:
def import_object(self):
# type: () -> Any
- ret = ClassLevelDocumenter.import_object(self)
+ ret = super(MethodDocumenter, self).import_object()
if not ret:
return ret
@@ -1355,7 +1354,7 @@ class AttributeDocumenter(DocstringStripSignatureMixin, ClassLevelDocumenter):
def import_object(self):
# type: () -> Any
- ret = ClassLevelDocumenter.import_object(self)
+ ret = super(AttributeDocumenter, self).import_object()
if isenumattribute(self.object):
self.object = self.object.value
if isdescriptor(self.object) and \
@@ -1373,7 +1372,7 @@ class AttributeDocumenter(DocstringStripSignatureMixin, ClassLevelDocumenter):
def add_directive_header(self, sig):
# type: (unicode) -> None
- ClassLevelDocumenter.add_directive_header(self, sig)
+ super(AttributeDocumenter, self).add_directive_header(sig)
sourcename = self.get_sourcename()
if not self.options.annotation:
if not self._datadescriptor:
@@ -1395,7 +1394,7 @@ class AttributeDocumenter(DocstringStripSignatureMixin, ClassLevelDocumenter):
# if it's not a data descriptor, its docstring is very probably the
# wrong thing to display
no_docstring = True
- ClassLevelDocumenter.add_content(self, more_content, no_docstring)
+ super(AttributeDocumenter, self).add_content(more_content, no_docstring)
class InstanceAttributeDocumenter(AttributeDocumenter):
@@ -1427,7 +1426,7 @@ class InstanceAttributeDocumenter(AttributeDocumenter):
def add_content(self, more_content, no_docstring=False):
# type: (Any, bool) -> None
"""Never try to get a docstring from the object."""
- AttributeDocumenter.add_content(self, more_content, no_docstring=True)
+ super(InstanceAttributeDocumenter, self).add_content(more_content, no_docstring=True)
def get_documenters(app):
diff --git a/sphinx/ext/doctest.py b/sphinx/ext/doctest.py
index f74e9e32e..edeed0955 100644
--- a/sphinx/ext/doctest.py
+++ b/sphinx/ext/doctest.py
@@ -254,7 +254,7 @@ class SphinxDocTestRunner(doctest.DocTestRunner):
old_stdout = sys.stdout
sys.stdout = string_io
try:
- res = doctest.DocTestRunner.summarize(self, verbose)
+ res = super(SphinxDocTestRunner, self).summarize(verbose)
finally:
sys.stdout = old_stdout
out(string_io.getvalue())
diff --git a/sphinx/io.py b/sphinx/io.py
index a0f3559ac..b35dcc73f 100644
--- a/sphinx/io.py
+++ b/sphinx/io.py
@@ -73,14 +73,14 @@ class SphinxBaseReader(standalone.Reader):
def get_transforms(self):
# type: () -> List[Type[Transform]]
- return standalone.Reader.get_transforms(self) + self.transforms
+ return super(SphinxBaseReader, self).get_transforms() + self.transforms
def new_document(self):
# type: () -> nodes.document
"""Creates a new document object which having a special reporter object good
for logging.
"""
- document = standalone.Reader.new_document(self)
+ document = super(SphinxBaseReader, self).new_document()
# substitute transformer
document.transformer = SphinxTransformer(document)
@@ -187,7 +187,7 @@ class SphinxBaseFileInput(FileInput):
After reading, it emits Sphinx event ``source-read``.
"""
- data = FileInput.read(self)
+ data = super(SphinxBaseFileInput, self).read()
# emit source-read event
arg = [data]
@@ -254,7 +254,7 @@ class SphinxRSTFileInput(SphinxBaseFileInput):
def read(self):
# type: () -> StringList
- inputstring = SphinxBaseFileInput.read(self)
+ inputstring = super(SphinxRSTFileInput, self).read()
lines = string2lines(inputstring, convert_whitespace=True)
content = StringList()
for lineno, line in enumerate(lines):
diff --git a/sphinx/parsers.py b/sphinx/parsers.py
index 510d20bcc..ccaba19cb 100644
--- a/sphinx/parsers.py
+++ b/sphinx/parsers.py
@@ -66,7 +66,7 @@ class RSTParser(docutils.parsers.rst.Parser):
"""Sphinx's reST parser replaces a transform class for smart-quotes by own's
refs: sphinx.io.SphinxStandaloneReader"""
- transforms = docutils.parsers.rst.Parser.get_transforms(self)
+ transforms = super(RSTParser, self).get_transforms()
transforms.remove(SmartQuotes)
return transforms
@@ -88,7 +88,7 @@ class RSTParser(docutils.parsers.rst.Parser):
self.finish_parse()
else:
# otherwise, inputstring might be a string. It will be handled by superclass.
- docutils.parsers.rst.Parser.parse(self, inputstring, document)
+ super(RSTParser, self).parse(inputstring, document)
def setup(app):
diff --git a/sphinx/roles.py b/sphinx/roles.py
index 30b41438f..0c1f74cef 100644
--- a/sphinx/roles.py
+++ b/sphinx/roles.py
@@ -173,8 +173,8 @@ class XRefRole:
class AnyXRefRole(XRefRole):
def process_link(self, env, refnode, has_explicit_title, title, target):
# type: (BuildEnvironment, nodes.reference, bool, unicode, unicode) -> Tuple[unicode, unicode] # NOQA
- result = XRefRole.process_link(self, env, refnode, has_explicit_title,
- title, target)
+ result = super(AnyXRefRole, self).process_link(env, refnode, has_explicit_title,
+ title, target)
# add all possible context info (i.e. std:program, py:module etc.)
refnode.attributes.update(env.ref_context)
return result
diff --git a/sphinx/transforms/__init__.py b/sphinx/transforms/__init__.py
index e364b7c99..be80661c4 100644
--- a/sphinx/transforms/__init__.py
+++ b/sphinx/transforms/__init__.py
@@ -88,7 +88,7 @@ class SphinxTransformer(Transformer):
if not hasattr(self.document.settings, 'env') and self.env:
self.document.settings.env = self.env
- Transformer.apply_transforms(self)
+ super(SphinxTransformer, self).apply_transforms()
else:
# wrap the target node by document node during transforming
try:
@@ -97,7 +97,7 @@ class SphinxTransformer(Transformer):
document.settings.env = self.env
document += self.document
self.document = document
- Transformer.apply_transforms(self)
+ super(SphinxTransformer, self).apply_transforms()
finally:
self.document = self.document[0]
@@ -351,7 +351,7 @@ class SphinxSmartQuotes(SmartQuotes, SphinxTransform):
if not self.is_available():
return
- SmartQuotes.apply(self)
+ super(SphinxSmartQuotes, self).apply()
def is_available(self):
# type: () -> bool
diff --git a/sphinx/util/docutils.py b/sphinx/util/docutils.py
index 09bf12b6f..6146a48e3 100644
--- a/sphinx/util/docutils.py
+++ b/sphinx/util/docutils.py
@@ -319,7 +319,7 @@ class SphinxFileOutput(FileOutput):
if f.read() == data:
return data
- return FileOutput.write(self, data)
+ return super(SphinxFileOutput, self).write(data)
class SphinxDirective(Directive):
diff --git a/sphinx/util/stemmer/__init__.py b/sphinx/util/stemmer/__init__.py
index 309d1adbe..3f85c7726 100644
--- a/sphinx/util/stemmer/__init__.py
+++ b/sphinx/util/stemmer/__init__.py
@@ -38,13 +38,13 @@ class PyStemmer(BaseStemmer):
return self.stemmer.stemWord(word)
-class StandardStemmer(BaseStemmer, PorterStemmer): # type: ignore
+class StandardStemmer(PorterStemmer, BaseStemmer): # type: ignore
"""All those porter stemmer implementations look hideous;
make at least the stem method nicer.
"""
def stem(self, word): # type: ignore
# type: (unicode) -> unicode
- return PorterStemmer.stem(self, word, 0, len(word) - 1)
+ return super(StandardStemmer, self).stem(word, 0, len(word) - 1)
def get_stemmer():
diff --git a/sphinx/writers/html.py b/sphinx/writers/html.py
index 49f553004..c95c7c2f4 100644
--- a/sphinx/writers/html.py
+++ b/sphinx/writers/html.py
@@ -376,18 +376,18 @@ class HTMLTranslator(BaseTranslator):
# avoid emitting empty <ul></ul>
raise nodes.SkipNode
self.generate_targets_for_listing(node)
- BaseTranslator.visit_bullet_list(self, node)
+ super(HTMLTranslator, self).visit_bullet_list(node)
# overwritten
def visit_enumerated_list(self, node):
# type: (nodes.enumerated_list) -> None
self.generate_targets_for_listing(node)
- BaseTranslator.visit_enumerated_list(self, node)
+ super(HTMLTranslator, self).visit_enumerated_list(node)
# overwritten
def visit_title(self, node):
# type: (nodes.title) -> None
- BaseTranslator.visit_title(self, node)
+ super(HTMLTranslator, self).visit_title(node)
self.add_secnumber(node)
self.add_fignumber(node.parent)
if isinstance(node.parent, nodes.table):
@@ -413,14 +413,14 @@ class HTMLTranslator(BaseTranslator):
elif isinstance(node.parent, nodes.table):
self.body.append('</span>')
- BaseTranslator.depart_title(self, node)
+ super(HTMLTranslator, self).depart_title(node)
# overwritten
def visit_literal_block(self, node):
# type: (nodes.literal_block) -> None
if node.rawsource != node.astext():
# most probably a parsed-literal block -- don't highlight
- return BaseTranslator.visit_literal_block(self, node)
+ return super(HTMLTranslator, self).visit_literal_block(node)
lang = node.get('language', 'default')
linenos = node.get('linenos', False)
@@ -446,7 +446,7 @@ class HTMLTranslator(BaseTranslator):
if isinstance(node.parent, nodes.container) and node.parent.get('literal_block'):
self.body.append('<div class="code-block-caption">')
else:
- BaseTranslator.visit_caption(self, node)
+ super(HTMLTranslator, self).visit_caption(node)
self.add_fignumber(node.parent)
self.body.append(self.starttag(node, 'span', '', CLASS='caption-text'))
@@ -467,7 +467,7 @@ class HTMLTranslator(BaseTranslator):
if isinstance(node.parent, nodes.container) and node.parent.get('literal_block'):
self.body.append('</div>\n')
else:
- BaseTranslator.depart_caption(self, node)
+ super(HTMLTranslator, self).depart_caption(node)
def visit_doctest_block(self, node):
# type: (nodes.doctest_block) -> None
@@ -552,7 +552,7 @@ class HTMLTranslator(BaseTranslator):
if isinstance(node.parent, addnodes.versionmodified):
# Never compact versionmodified nodes.
return False
- return BaseTranslator.should_be_compact_paragraph(self, node)
+ return super(HTMLTranslator, self).should_be_compact_paragraph(node)
def visit_compact_paragraph(self, node):
# type: (addnodes.compact_paragraph) -> None
@@ -626,7 +626,7 @@ class HTMLTranslator(BaseTranslator):
node['width'] = str(size[0])
if 'height' not in node:
node['height'] = str(size[1])
- BaseTranslator.visit_image(self, node)
+ super(HTMLTranslator, self).visit_image(node)
# overwritten
def depart_image(self, node):
@@ -634,7 +634,7 @@ class HTMLTranslator(BaseTranslator):
if node['uri'].lower().endswith(('svg', 'svgz')):
self.body.append(self.context.pop())
else:
- BaseTranslator.depart_image(self, node)
+ super(HTMLTranslator, self).depart_image(node)
def visit_toctree(self, node):
# type: (addnodes.toctree) -> None
@@ -684,7 +684,7 @@ class HTMLTranslator(BaseTranslator):
def visit_option_group(self, node):
# type: (nodes.option_group) -> None
- BaseTranslator.visit_option_group(self, node)
+ super(HTMLTranslator, self).visit_option_group(node)
self.context[-2] = self.context[-2].replace('&nbsp;', '&#160;')
# overwritten
@@ -827,7 +827,7 @@ class HTMLTranslator(BaseTranslator):
def visit_table(self, node):
# type: (nodes.table) -> None
self._table_row_index = 0
- return BaseTranslator.visit_table(self, node)
+ return super(HTMLTranslator, self).visit_table(node)
def visit_row(self, node):
# type: (nodes.row) -> None
@@ -841,14 +841,14 @@ class HTMLTranslator(BaseTranslator):
def visit_entry(self, node):
# type: (nodes.entry) -> None
- BaseTranslator.visit_entry(self, node)
+ super(HTMLTranslator, self).visit_entry(node)
if self.body[-1] == '&nbsp;':
self.body[-1] = '&#160;'
def visit_field_list(self, node):
# type: (nodes.field_list) -> None
self._fieldlist_row_index = 0
- return BaseTranslator.visit_field_list(self, node)
+ return super(HTMLTranslator, self).visit_field_list(node)
def visit_field(self, node):
# type: (nodes.field) -> None
@@ -862,7 +862,7 @@ class HTMLTranslator(BaseTranslator):
def visit_field_name(self, node):
# type: (nodes.field_name) -> None
context_count = len(self.context)
- BaseTranslator.visit_field_name(self, node)
+ super(HTMLTranslator, self).visit_field_name(node)
if context_count != len(self.context):
self.context[-1] = self.context[-1].replace('&nbsp;', '&#160;')
diff --git a/sphinx/writers/html5.py b/sphinx/writers/html5.py
index 66428593d..1b499823b 100644
--- a/sphinx/writers/html5.py
+++ b/sphinx/writers/html5.py
@@ -328,12 +328,12 @@ class HTML5Translator(BaseTranslator):
if len(node) == 1 and node[0].tagname == 'toctree':
# avoid emitting empty <ul></ul>
raise nodes.SkipNode
- BaseTranslator.visit_bullet_list(self, node)
+ super(HTML5Translator, self).visit_bullet_list(node)
# overwritten
def visit_title(self, node):
# type: (nodes.title) -> None
- BaseTranslator.visit_title(self, node)
+ super(HTML5Translator, self).visit_title(node)
self.add_secnumber(node)
self.add_fignumber(node.parent)
if isinstance(node.parent, nodes.table):
@@ -359,14 +359,14 @@ class HTML5Translator(BaseTranslator):
elif isinstance(node.parent, nodes.table):
self.body.append('</span>')
- BaseTranslator.depart_title(self, node)
+ super(HTML5Translator, self).depart_title(node)
# overwritten
def visit_literal_block(self, node):
# type: (nodes.literal_block) -> None
if node.rawsource != node.astext():
# most probably a parsed-literal block -- don't highlight
- return BaseTranslator.visit_literal_block(self, node)
+ return super(HTML5Translator, self).visit_literal_block(node)
lang = node.get('language', 'default')
linenos = node.get('linenos', False)
@@ -392,7 +392,7 @@ class HTML5Translator(BaseTranslator):
if isinstance(node.parent, nodes.container) and node.parent.get('literal_block'):
self.body.append('<div class="code-block-caption">')
else:
- BaseTranslator.visit_caption(self, node)
+ super(HTML5Translator, self).visit_caption(node)
self.add_fignumber(node.parent)
self.body.append(self.starttag(node, 'span', '', CLASS='caption-text'))
@@ -413,7 +413,7 @@ class HTML5Translator(BaseTranslator):
if isinstance(node.parent, nodes.container) and node.parent.get('literal_block'):
self.body.append('</div>\n')
else:
- BaseTranslator.depart_caption(self, node)
+ super(HTML5Translator, self).depart_caption(node)
def visit_doctest_block(self, node):
# type: (nodes.doctest_block) -> None
@@ -498,7 +498,7 @@ class HTML5Translator(BaseTranslator):
if isinstance(node.parent, addnodes.versionmodified):
# Never compact versionmodified nodes.
return False
- return BaseTranslator.should_be_compact_paragraph(self, node)
+ return super(HTML5Translator, self).should_be_compact_paragraph(node)
def visit_compact_paragraph(self, node):
# type: (addnodes.compact_paragraph) -> None
@@ -572,7 +572,7 @@ class HTML5Translator(BaseTranslator):
node['width'] = str(size[0])
if 'height' not in node:
node['height'] = str(size[1])
- BaseTranslator.visit_image(self, node)
+ super(HTML5Translator, self).visit_image(node)
# overwritten
def depart_image(self, node):
@@ -580,7 +580,7 @@ class HTML5Translator(BaseTranslator):
if node['uri'].lower().endswith(('svg', 'svgz')):
self.body.append(self.context.pop())
else:
- BaseTranslator.depart_image(self, node)
+ super(HTML5Translator, self).depart_image(node)
def visit_toctree(self, node):
# type: (addnodes.toctree) -> None
@@ -806,7 +806,7 @@ class HTML5Translator(BaseTranslator):
def visit_field_list(self, node):
# type: (nodes.field_list) -> None
self._fieldlist_row_index = 0
- return BaseTranslator.visit_field_list(self, node)
+ return super(HTML5Translator, self).visit_field_list(node)
def visit_field(self, node):
# type: (nodes.field) -> None
diff --git a/sphinx/writers/manpage.py b/sphinx/writers/manpage.py
index b616a8233..9249266d2 100644
--- a/sphinx/writers/manpage.py
+++ b/sphinx/writers/manpage.py
@@ -248,7 +248,7 @@ class ManualPageTranslator(BaseTranslator):
if node.traverse(nodes.strong):
self.body.append('\n')
else:
- BaseTranslator.visit_term(self, node)
+ super(ManualPageTranslator, self).visit_term(node)
# overwritten -- we don't want source comments to show up
def visit_comment(self, node):
@@ -259,7 +259,7 @@ class ManualPageTranslator(BaseTranslator):
def visit_footnote(self, node):
# type: (nodes.footnote) -> None
self.ensure_eol()
- BaseTranslator.visit_footnote(self, node)
+ super(ManualPageTranslator, self).visit_footnote(node)
# overwritten -- handle footnotes rubric
def visit_rubric(self, node):
@@ -471,14 +471,14 @@ class ManualPageTranslator(BaseTranslator):
self.body.append('.SH %s\n' %
self.deunicode(node.astext().upper()))
raise nodes.SkipNode
- return BaseTranslator.visit_title(self, node)
+ return super(ManualPageTranslator, self).visit_title(node)
def depart_title(self, node):
# type: (nodes.title) -> None
if isinstance(node.parent, addnodes.seealso):
self.body.append('"\n')
return
- return BaseTranslator.depart_title(self, node)
+ return super(ManualPageTranslator, self).depart_title(node)
def visit_raw(self, node):
# type: (nodes.raw) -> None
diff --git a/sphinx/writers/text.py b/sphinx/writers/text.py
index 78d015c18..dc077e385 100644
--- a/sphinx/writers/text.py
+++ b/sphinx/writers/text.py
@@ -333,7 +333,7 @@ class TextWrapper(textwrap.TextWrapper):
"""
def split(t):
# type: (unicode) -> List[unicode]
- return textwrap.TextWrapper._split(self, t) # type: ignore
+ return super(TextWrapper, self)._split(t) # type: ignore
chunks = [] # type: List[unicode]
for chunk in split(text):
for w, g in groupby(chunk, column_width):
diff --git a/sphinx/writers/xml.py b/sphinx/writers/xml.py
index 824fba304..2a18c173c 100644
--- a/sphinx/writers/xml.py
+++ b/sphinx/writers/xml.py
@@ -34,7 +34,7 @@ class XMLWriter(BaseXMLWriter):
self.builder.env.config.xml_pretty
self.document.settings.xml_declaration = True
self.document.settings.doctype_declaration = True
- return BaseXMLWriter.translate(self)
+ return super(XMLWriter, self).translate()
class PseudoXMLWriter(writers.Writer):