From b195b823ba0bb967308adf4adabcf81fa5e222b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Eertmans?= Date: Thu, 20 Jul 2023 13:59:28 +0200 Subject: [PATCH] chore(docs): improve directive's documentation --- manim_slides/docs/__init__.py | 0 manim_slides/docs/manim_slides_directive.py | 26 +++++++++++++++++---- 2 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 manim_slides/docs/__init__.py diff --git a/manim_slides/docs/__init__.py b/manim_slides/docs/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/manim_slides/docs/manim_slides_directive.py b/manim_slides/docs/manim_slides_directive.py index b03be6a..253be57 100644 --- a/manim_slides/docs/manim_slides_directive.py +++ b/manim_slides/docs/manim_slides_directive.py @@ -16,12 +16,28 @@ A directive for including Manim slides in a Sphinx document When rendering the HTML documentation, the ``.. manim-slides::`` directive implemented here allows to include rendered videos. +Usage +----- + +First, you must include the directive in the Sphinx configuration file: + +.. code-block:: python + :caption: Sphinx configuration file (usually :code:`docs/source/conf.py`). + :emphasize-lines: 3 + + extensions = [ + # ... + "manim_slides.docs.manim_slides_directive", + ] + Its basic usage that allows processing **inline content** looks as follows:: .. manim-slides:: MySlide + from manim import * + from manim_slides import Slide - class MySlide(Scene): + class MySlide(Slide): def construct(self): ... @@ -34,15 +50,15 @@ render scenes that are defined within doctests, for example:: .. manim-slides:: DirectiveDoctestExample :ref_classes: Dot - >>> from manim import Create, Dot, RED, Scene + >>> from manim import Create, Dot, RED + >>> from manim_slides import Slide >>> dot = Dot(color=RED) >>> dot.color - >>> class DirectiveDoctestExample(Scene): + >>> class DirectiveDoctestExample(Slide): ... def construct(self): ... self.play(Create(dot)) - Options ------- @@ -86,7 +102,7 @@ from timeit import timeit import jinja2 from docutils import nodes -from docutils.parsers.rst import Directive, directives # type: ignore +from docutils.parsers.rst import Directive, directives from docutils.statemachine import StringList from manim import QUALITIES