Skip to content

Commit f8b0753

Browse files
authored
Merge pull request #435 from behackl/sphinx-manim-fix
manim-directive: more robust paths, set (and create) tex/text directories
2 parents e48d467 + 19c6610 commit f8b0753

File tree

1 file changed

+16
-4
lines changed

1 file changed

+16
-4
lines changed

docs/source/manim_directive.py

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -152,8 +152,18 @@ def run(self):
152152
]
153153
source_block = "\n".join(source_block)
154154

155-
media_dir = os.path.join("source", "media")
155+
media_dir = os.path.join(setup.confdir, "media")
156+
if not os.path.exists(media_dir):
157+
os.mkdir(media_dir)
156158
images_dir = os.path.join(media_dir, "images")
159+
if not os.path.exists(images_dir):
160+
os.mkdir(images_dir)
161+
tex_dir = os.path.join(media_dir, "tex")
162+
if not os.path.exists(tex_dir):
163+
os.mkdir(tex_dir)
164+
text_dir = os.path.join(media_dir, "text")
165+
if not os.path.exists(text_dir):
166+
os.mkdir(text_dir)
157167
video_dir = os.path.join(media_dir, "videos")
158168
output_file = f"{clsname}-{classnamedict[clsname]}"
159169

@@ -163,6 +173,8 @@ def run(self):
163173
f'config["pixel_width"] = {pixel_width}',
164174
f'file_writer_config["media_dir"] = "{media_dir}"',
165175
f'file_writer_config["images_dir"] = "{images_dir}"',
176+
f'file_writer_config["tex_dir"] = "{tex_dir}"',
177+
f'file_writer_config["text_dir"] = "{text_dir}"',
166178
f'file_writer_config["video_dir"] = "{video_dir}"',
167179
f'file_writer_config["save_last_frame"] = {save_last_frame}',
168180
f'file_writer_config["save_as_gif"] = {save_as_gif}',
@@ -200,7 +212,7 @@ def run(self):
200212

201213
rendered_template = jinja2.Template(TEMPLATE).render(
202214
display_source=display_source,
203-
filesrc=filesrc[6:],
215+
filesrc_rel=os.path.relpath(filesrc, setup.confdir),
204216
output_file=output_file,
205217
save_last_frame=save_last_frame,
206218
save_as_gif=save_as_gif,
@@ -239,10 +251,10 @@ def setup(app):
239251
240252
<video class="manim-video" controls loop autoplay src="./{{ output_file }}.mp4"></video>
241253
{% elif save_as_gif %}
242-
.. image:: {{ filesrc }}
254+
.. image:: /{{ filesrc_rel }}
243255
:align: center
244256
{% elif save_last_frame %}
245-
.. image:: {{ filesrc }}
257+
.. image:: /{{ filesrc_rel }}
246258
:align: center
247259
{% endif %}
248260

0 commit comments

Comments
 (0)