[ADD] extensions: add a custom example admonition
closes odoo/documentation#1501
X-original-commit: acda12669d
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
This commit is contained in:
committed by
Antoine Vandevenne (anv)
parent
fd25322fda
commit
2bf697bda4
@@ -0,0 +1,43 @@
|
||||
""" Add new custom admonition directives. """
|
||||
|
||||
from docutils import nodes
|
||||
from docutils.parsers.rst.directives import admonitions
|
||||
from sphinx.locale import admonitionlabels
|
||||
|
||||
|
||||
class example(nodes.Admonition, nodes.Element):
|
||||
pass
|
||||
|
||||
|
||||
class Example(admonitions.BaseAdmonition):
|
||||
node_class = example
|
||||
|
||||
|
||||
class exercise(nodes.Admonition, nodes.Element):
|
||||
pass
|
||||
|
||||
|
||||
class Exercise(admonitions.BaseAdmonition):
|
||||
node_class = exercise
|
||||
|
||||
|
||||
def setup(app):
|
||||
app.add_directive('example', Example)
|
||||
app.add_node(example, html=(
|
||||
lambda self, node: self.visit_admonition(node, 'example'),
|
||||
lambda self, node: self.depart_admonition(node),
|
||||
))
|
||||
app.add_directive('exercise', Exercise)
|
||||
app.add_node(exercise, html=(
|
||||
lambda self, node: self.visit_admonition(node, 'exercise'),
|
||||
lambda self, node: self.depart_admonition(node),
|
||||
))
|
||||
|
||||
return {
|
||||
'parallel_read_safe': True,
|
||||
'parallel_write_safe': True
|
||||
}
|
||||
|
||||
|
||||
admonitionlabels['example'] = 'Example'
|
||||
admonitionlabels['exercise'] = 'Exercise'
|
||||
Reference in New Issue
Block a user