* refactor(lib): change how manim API is imported
* chore(lib): delete old files
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* wip: moving all commands
* adding animations
* fix tests
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix mypy
* fixes
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* trying to fix docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* wip: docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* make it work
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* wip test
* tests are working
* improving docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix index
* docs: nicer shift
* docs: nicer quickstart example
* fix tests
* change tests
* move coverage to test workflow
* fix(tests): remove resolve
* strict resolve
* change local path test
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* documented changes
* cleanup docs
* cleanup files
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(ci): set type
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* chore(convert): use Jinja2 for templating
Use Jinja2 templating for more customizable rendering
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(deps): jinja2 is no more optional
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* feat(lib): Sphinx directive can now read files
You can optionally read a file instead of the Sphinx directive's content
* fix(lib): rst syntax and docs
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* wip: rewrite player
* wip(cli): new player
* wip(player): allow to close
* Auto stash before merge of "rewrite-player" and "origin/rewrite-player"
* feat(cli): new player
* chore(docs): document changes
* feat(cli): add info window
* chore(lib/cli): one video per slide
As titled, this PR changes how Manim Slides used to work by only storing one video file per slide.
Previously, a slide would store all animations that occur during the given slide. Up to now, the only "advantage" of this was that it would allow the user to know which animation is played.
But, at the cost of a very complex logic in present, just especially for reversed slides.
On top of top, all converter actually need to concatenate the animations from each slide into one, so it is now performed at rendering time.
To migrate from previous Manim Slides versions, the best is the render the slides again, using `manim render` or `manimgl render`.
Currently, it is not possible to start at a given animation anymore. However, if wanted, I may re-implement this, but this would require to change the config file again.
* fix(ci): trying to fix tests
* chore(test): renaming files
* chore(docs): remove old line from changelog
* fix(docs): typo
* fix(ci): manimgl and smarter comparison
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* feat(lib): add Jupyter magic
And also use the same logger level as manim (by default)
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(lib): remove deleted module
* chore(lib): fix typing issues
* chore(docs): document magic
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(ci): install kernel
* fix(ci): spawning is not necessary (and fails)
* chore(ci): add ipykernel
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* feat(convert): support base64 encoded videos
Thanks to @t-fritsch, Manim Slides can now convert to a fully self-contained HTML presentation using base64 encoded videos!
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* chore(lib): explicit decode type
* feat(lib): auto detect mime type
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* feat(present): fix presentation size and add screen option
This kinda fixes the issue of weird resizes between two presentations
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* fix(ci): typing
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This PR introduces a **BREAKING CHANGE**: the general config file is now written in the TOML format. Keys are also placed under a shared subsection. Previous config files will be ignore.
Migration from the previous format can be easily performed with `manim-slides init` and copy/pasting the key codes if necessary.
* fix(lib/cli): relative paths, empty slides, and tests
This fixes two issues:
1. Empty slides are now reported as error, to prevent indexing error;
2. Changing the folder path will now produce an absolute path to slides, which was not the case before and would lead to a "file does not exist error".
A few tests were also added to cover those
* fix(lib): fix from_file, remove useless field, and more
* chore(tests): remove print
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>