Commit | Line | Data |
---|---|---|
9610848c WKG |
1 | from docutils import nodes |
2 | ||
3 | from sphinx.util.compat import Directive, make_admonition | |
4 | ||
5 | class youcanhelp_node(nodes.Admonition, nodes.Element): | |
6 | pass | |
7 | ||
8 | class YouCanHelp(Directive): | |
9 | has_content = True | |
10 | required_arguments = 0 | |
11 | optional_arguments = 0 | |
12 | final_argument_whitespace = False | |
13 | option_spec = {} | |
14 | ||
15 | def run(self): | |
16 | ad = make_admonition( | |
17 | youcanhelp_node, | |
18 | self.name, | |
19 | ["You Can Help!"], | |
20 | self.options, | |
21 | self.content, | |
22 | self.lineno, | |
23 | self.content_offset, | |
24 | self.block_text, | |
25 | self.state, | |
26 | self.state_machine) | |
27 | ad[0].line = self.lineno | |
28 | return ad | |
29 | ||
30 | def visit_youcanhelp_node(self, node): | |
31 | self.visit_admonition(node) | |
32 | ||
33 | def depart_youcanhelp_node(self, node): | |
34 | self.depart_admonition(node) | |
35 | ||
36 | def setup(app): | |
37 | app.add_node( | |
38 | youcanhelp_node, | |
39 | html=(visit_youcanhelp_node, depart_youcanhelp_node), | |
40 | latex=(visit_youcanhelp_node, depart_youcanhelp_node), | |
41 | text=(visit_youcanhelp_node, depart_youcanhelp_node) | |
42 | ) | |
43 | ||
44 | app.add_directive('youcanhelp', YouCanHelp) |