documentation/extensions/exercise_admonition/__init__.py
Antoine Vandevenne (anv) 4d51cb2f0e parallel_read False
2021-04-29 11:36:05 +02:00

30 lines
675 B
Python

""" Add a new "exercise" admonition directive. """
from docutils import nodes
from docutils.parsers.rst.directives import admonitions
from sphinx.locale import admonitionlabels
class exercise(nodes.Admonition, nodes.Element):
pass
class Exercise(admonitions.BaseAdmonition):
node_class = exercise
def setup(app):
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': False,
'parallel_write_safe': True
}
admonitionlabels['exercise'] = 'Exercise'