]> scripts.mit.edu Git - wizard.git/blob - wizard/sphinx/supplement.py
Use CLI installer for MediaWiki 1.17.0 and later.
[wizard.git] / wizard / sphinx / supplement.py
1 import docutils
2 import sphinx.util.compat
3
4 def setup(app):
5     app.add_node(supplement,
6                  html=(visit_supplement_node, depart_supplement_node),
7                  latex=(visit_supplement_node, depart_supplement_node),
8                  text=(visit_supplement_node, depart_supplement_node))
9     app.add_directive('supplement', SupplementDirective)
10
11 class supplement(docutils.nodes.Admonition, docutils.nodes.Element):
12     pass
13
14 def visit_supplement_node(self, node):
15     self.visit_admonition(node)
16
17 def depart_supplement_node(self, node):
18     self.depart_admonition(node)
19
20 class SupplementDirective(sphinx.util.compat.Directive):
21     has_content = True
22     optional_arguments = 1
23     final_argument_whitespace = True
24     def run(self):
25         text = 'Supplement'
26         if len(self.arguments) > 0:
27             text = "For %s" % self.arguments[0]
28         return sphinx.util.compat.make_admonition(supplement, self.name, [text], self.options,
29                              self.content, self.lineno, self.content_offset,
30                              self.block_text, self.state, self.state_machine)
31