* Added click dependency and command structure
* Refactored code for separation of concerns
* Shortened plugins command to plugin, added render options
* first draft for render -h
* First successful render using click
* Cleaned main
* Moved flush_cache to option, ran black
* Removed argparse logic, scattered print statements
* corrected tests, all passing
* merge upstream
* fixed test with click's clirunner
* Fixed doctest configuration.rst
* Temporarily add in main_utils
* Removed main_utils.parse_args, used ManimConfig.digest_args
* fixed progress bar
* Fix jupyter
* black
* Fixed incorrectly merged merge conflict
* updated README command.png image
* updated configuration.rst expected output
* Fixed test_plugins and config_file expected type
* Refixed the jupyter fix
* Apply 3/5 suggestions
Remove stray print
Improve readability of test code
Added module docs for the subcommands
* Updated `main` to `manim` for tests
* Forced `file` positional argument to be Path type
* Fixed main -> manim
* Added libpango to linux dependency
* Updated poetry.lock
* Changed configuration.rst test
* Fixed test_a_flag test
minor space issue
added media_width to configuration.rst
* Fixed fps flag in Cairo rendering
* Fixed more outdated rst in sphinx docs
Removed default for fps option, always overwrote quality
Fixed doctest control_data
* Fixed more incorrect rst orderings
* Update tests/test_commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Added suggestions
* Removed unused imports
* Reverted entry point back to main
* Update manim/_config/default.cfg
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* Adjusted ipython_magic's call to the entry_point
* Converted frame_rate to int if integer
* run black
* Fixed doctest
* Fixed issue with command name from CliRunner
* Fixed multiple video windows opening from upstream merge
* to black or not to black
* Added deprecation warning to render subcommand
* warning instead of warn
* Applied Naveen's suggestions
* Made `manim render` show the help page
* Update manim/cli/render/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/cfg/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/cfg/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update manim/cli/plugins/commands.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Addressed some style changes
* add back in write_to_movie temporarily for OpenGL support
* Removed sound flag, deprecated use_opengl_renderer, added renderer option
* revert webgl_renderer_path removal
* Fixed cfg export
Fixed readme usage of CLI
* Flake8/black
* Fixed bug in setting renderer choice
* Removed log message due to default option
Removed default option of background color
Fixed write_to_movie flag default
* Fix log_to_file tests
* Make '-c' option for config_file, not background_color
* print colored version always
* Remove -v = --version shorthand, conflicts with verbosity
* Use subprocess.run instead of Click's CliRunner for stdout
* Refactor cli/render to use Cloup instead of click-option-group
1) There's a new file for each option group
2) render is now a cloup.Command, not a Group
Fixed issue when an animation is cached, manim can't merge the partial movie files. (#1192)
* fixed issue
* fixed tests
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Darylgolden <darylgolden@gmail.com>
* added tests
* imrpoved test
* fixed logic
* added new test
* check if the file has been outputed
* added test when caching is enabled
* fixed tests on windows
* black
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update tests/assert_utils.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>
Co-authored-by: Darylgolden <darylgolden@gmail.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Added :ref_methods: to the manim directive (#1209)
* fix manim_directive for methods
* added ref_methods to Angle example
* black
* added new ref_methods references
* sort out ref_functions vs ref_methods in examples.rst
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Fixed issue when an animation is cached, manim can't merge the partial movie files. (#1192)
* fixed issue
* fixed tests
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Darylgolden <darylgolden@gmail.com>
* added tests
* imrpoved test
* fixed logic
* added new test
* check if the file has been outputed
* added test when caching is enabled
* fixed tests on windows
* black
* Update manim/renderer/cairo_renderer.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update tests/assert_utils.py
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: KingWampy <9156604+WampyCakes@users.noreply.github.com>
Co-authored-by: Darylgolden <darylgolden@gmail.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Added :ref_methods: to the manim directive (#1209)
* fix manim_directive for methods
* added ref_methods to Angle example
* black
* added new ref_methods references
* sort out ref_functions vs ref_methods in examples.rst
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Fixed unnecessary args dict
* Fixed bug that changed caching hashing result
* Revert doctest logic for fps filename output
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Co-authored-by: Gianluca Gippetto <gianluca.gippetto@gmail.com>
* Deprecated ShowCreation in favor of Create
* Fixed Black formatting and logger error
* Fixed relative import issue of logger
* Renamed CreateThen.. calls to previous names
* Fixed __all__ classes, fixed Create inheritance
* Update manim/animation/creation.py
Move logger warning to class initializer
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Added new 3D mobjects: mostly taken from dor2727's previous incomplete PR
* Added Torus from 3b1b manim
* Added tests
* Remove personal test file
* Ran black
* Added test for Arrow3D
* Apply suggestions from code review
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Black formatting
* Added documentation, tests failing?
* Added documentation, tests fixed
* Rename self.height to self._height
* Removed unnecessary property.
* Fixed tests
* Apply suggestions from code review
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
* Black
* Apply suggestions from code review
Simple changes for now
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Apply suggestions from code review
Possibly breaking changes
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
* Update manim/mobject/three_dimensions.py
Fix indentation
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Update manim/mobject/three_dimensions.py
Fix indentation
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Fix things
* Change parameter names for Torus
* Added get_direction method for Cylinder and fixed direction setting
* retrigger checks
* Changed max-width to 375px
* Resolve merge conflict
* Attempted to add config for jupyter_width
* Apply suggestions from code review
Attempt to fix
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
* Fixed config
* Updated test data.
* Change name in cfg file to match ManimConfig
* Added media_width support to iPython Image
* Revert "Change name in cfg file to match ManimConfig"
This reverts commit 57080a91be.
* Revert "Added media_width support to iPython Image"
This reverts commit 0391bfb223.
* Revert "Revert "Change name in cfg file to match ManimConfig""
This reverts commit 7d499fa43c.
Co-authored-by: Jason Villanueva <a@jsonvillanueva.com>
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
* Add .animate attribute to mobjects
* Return function from _AnimationBuilder.__getattr__
* black
* Pass background color to JS renderer
* Handle default case
* Pass background color to JS renderer
* Remove line that came back in the merge
* Handle FrameServer case
* Use community colors by default
* Allow for chaining _AnimationBuilder
* Trying to do tweening
* Add _AnimationBuilder.build()
* Apply docs patch
* Pass tweening data
* Pass ID for ImageMobject
* Fix Wait bug, add FadeIn tween data
* Remove unused proto fields
* Remove unused proto field
* Optimize RPCs
* Handle frame skipping better
* Refactoring
* Ignore PreviewMode.ALL
* Remove preview mode
* Don't send tween data for wait
* Opacity fixes
* Add comments
* Simplify protos
* Add tween data for wait
* Add todo
* Serialize when updating
* Prepare to send tweened and non-tweened mobject IDs
* Pass updater information to javascript
* Add log
* Rename js_* -> webgl_*, remove WebGLScene
* rename js->webgl in workflow file
* Update doctest
* Update .gitattributes
* Remove try/except for webgl imports
* Step through animations using updaters with fixed frame rate
* Add --webgl_updater_fps flag
* Configuration test
* configuration test
* JS->WebGL
* Add install message
* Automatically import Plugins
Specify plugins using CLI and config file
Signed-off-by: Naveen M K <naveen@syrusdark.website>
* Fix Doc tests
* clean manim.cfg
* Add more explanatory docs
* add info about plugins site
* use property method
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
* use types module and f-strings
* Add tests
* lint
* remove --plugins
it seems it is not possible currently to implement that
* fix doc tests
* don't define unnecessary variables
* Apply suggestions from code review
Co-authored-by: Leo Torres <dleonardotn@gmail.com>
Co-authored-by: friedkeenan <friedkeenan@protonmail.com>
Co-authored-by: Leo Torres <dleonardotn@gmail.com>
* working prototype of manim line and cell magic
* downgrade "dummy animation" log entry from warning to debug
* use built-in methods for displaying images/videos
* create tempconfig from current config, if available
* cleanup imports
* add some basic documentation and pointers
* make import of ipython_magic robust against missing IPython
* add statement to README
* fix link in quickstart
* experimental: stateful magic allowing to circumvent caching
* add jupyterlab to optional dependencies in pyproject.toml
* actually make jupyterlab an optional dependency
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* try to improve the situation for google colab
* embed video within google colab
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Add --version commandline flag
* Update __init__.py
* Update manim/_config/main_utils.py
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* Fix Black Check
* Update poetry.lock
* Create test_version.py
* Make black happy
Running black locally didn't catch this for some reason..
* Review changes
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* fix doctests
* add doctest to our ci pipeline
* need test reqs
* skip rendering videos for the doctests
* try to fix doctests under windows
* shell=True only when running on windows
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* rename config subpkg to _config for the time being
* Revamp documentation for configuration system modules and classes. Revamp tutorial. Update changelog
* use as_posix so that doctests will pass on Windows
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
* #added some examples to the camera scene
* #added 3 ZoomedScene examples
* #removed accidentally added files
* #added updater examples
* #added text examples
* #renamed example
* #added 3d example with other light source
* #added imagemobject examples
* # added one line of code
* # small fix
* # added 3d examples
* # added one advanced project
* fixed error
* small changes
* 3d render
* another idea with the file 3d_fix.rst
* # one more change
* some more formula examples
* fix indent
* remove reference to examples/3d_fix
* change default resolution for videos in doc to 480p30
* Apply suggestions leotrs
Co-authored-by: Leo Torres <leo@leotrs.com>
* Added credits and 3d scene changes
* # removed unnecessary lines
* # implemented lots of changes suggested be leotrs
* # updated credits
* # updated scene names
* Update docs/source/examples/shapes.rst
Co-authored-by: Leo Torres <leo@leotrs.com>
* updated credits
* updated examples entery
* Update camera_settings.rst
* changed two lines
* Update shapes.rst
* Update plots.rst
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
Co-authored-by: Leo Torres <leo@leotrs.com>
* add a section to the quickstart explaining the basics of building a scene
* add the internals_basic tutorial. Currently contains the section for Mobjects only
Co-authored by @behackl
Co-authored-by: Benjamin Hackl <devel@benjamin-hackl.at>
* add output of manim -h to the documentation, as a poor man documentation of CLI arguments
* document config system and general changes in the description of each command line flag
* run black
* MacOS
* update
* Add configuration.rst back to the toctree. Add the contributing guidelines, which is just a symlink to the main repository\'s contributing.md file.
* add the symlinks
* fix length of underlines
* update contributing guidelines
* convert quickstart doc from md to rst. Also add a troubleshooting stub file
* finish the second part of the quickstart
* add general and linux instructions
* add mac instructions
* add windows install instructions
* final touches
* Update docs/source/installation/win.rst
Co-authored-by: Naveen M K <naveen@syrusdark.website>
* Update a_deeper_look.rst
added explanation on the ``-s`` flag
* Update docs/source/installation/installation_linux.rst
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* Update docs/source/installation/win.rst
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* Update docs/source/installation/win.rst
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* Update docs/source/installation/win.rst
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* Update docs/source/installation/win.rst
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* updates from code review
* update from code review
Co-authored-by: Pg Biel <9021226+PgBiel@users.noreply.github.com>
Co-authored-by: Naveen M K <naveen@syrusdark.website>
Co-authored-by: kolibril13 <44469195+kolibril13@users.noreply.github.com>
Co-authored-by: Aathish Sivasubrahmanian <aathish04@gmail.com>
* add output of manim -h to the documentation, as a poor man documentation of CLI arguments
* document config system and general changes in the description of each command line flag
* run black
* MacOS
* update
* Add configuration.rst back to the toctree. Add the contributing guidelines, which is just a symlink to the main repository\'s contributing.md file.
* add the symlinks
* fix length of underlines
Co-authored-by: Pg Biel <9021226+PgBiel@users.noreply.github.com>