ManimCommunity / ManimCommunity/manim

CLI option to render specific section within scene for development workflow

Open
#4,055 0 comments 2 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

new feature
Dominant language
Python
Stars
40.9k
Forks
3.1k
Avg merge
3d 12h
Merged PRs (30d)
25

Description

Description of proposed feature

For development workflows and UI integration, it would be useful to be able to specify in the render command a specific section within a scene to render. For example, something like

manim myfile.py MyScene:3

would render only the 4th section of MyScene (the equivalent to setting skip_animations=True for all sections except the 4th in MyScene).

Currently, this can be done by manually setting the skip_animations argument in each call to self.next_section(...). However, it would be much more convenient to be able to indicate which subsection to animate separate from the scene code. This would also make it much simpler to implement this sort of development workflow in UIs which at the moment would have to programmatically edit the code file to achieve this simple and likely widely used development paradigm.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the render command's argument parsing and the scene section handling around self.next_section(...). Trace how skip_animations is applied, then define the CLI behavior for a section selector such as MyScene:3. Done means the command renders only the requested section without requiring edits to the scene source.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
cli
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.