一个模板项目,既可以说明,也可以作为在manim(communityedition)引擎上创建插件的示例。

manim-plugintemplate的Python项目详细描述


这是一个演示如何创建和上传manim的模板项目 使用与pep517兼容的构建系统(在本例中为 poetry)。此生成系统确保用户 你的插件能够可靠地做到这一点而不陷入 依赖地狱。您可以使用除诗歌之外的其他构建系统(例如。 如果你愿意的话。在

创建插件

插件是可以用来扩展Manim核心的特性 功能。按照惯例,插件的前缀应该是manim-when 被点名。这允许用户轻松地搜索组织中的插件 像PyPi一样,但不是必需的。Manim通过 在pyproject.toml中指定的元数据。在

安装诗歌

诗歌可以安装在任何可以有curl的操作系统上。请访问 官方诗歌网站installation instructions。在

设置插件目录结构

为了创建一个适合诗歌的Python项目,您可能希望看到 {所有a3}的正式文档列表。简而言之,如果你没有 扩展了manim的功能,运行:

poetry new --src manim-YourPluginName

注意:--src是可选的,建议使用它来创建src 你所有的插件代码都应该存在的目录。

这将创建以下项目结构:

^{pr2}$

如果已经扩展了manim的功能,则可以运行:

cd path/to/plugin
poetry init

这将提示您有关插件和帮助的基本信息 创建并填充与此模板中类似的pyproject.toml。在

见官方文件 有关init command的详细信息。在

更新Pyproject.toml项目

poetry和其他构建系统使用pyproject.toml文件来 管理和配置您的项目。Manim使用package’s entry point metadata 以发现可用的插件。入口点"manim.plugins"必需,可以是specified as follows

[tool.poetry.plugins."manim.plugins"]"manim_yourpluginname"="manim_yourpluginname"

这允许Manim通过manim plugin -u

在本地测试插件

poetry install

此命令将读取pyproject.toml,安装的依赖项 并创建一个poetry.lock文件,以确保每个人都使用 插件获取相同版本的依赖项。重要的是 依赖关系用一个版本约束进行了适当的注释(例如。 manim:^0.1.1numpy:1.19.2,等等…)。对 这里指定的依赖关系是它们与manim的不冲突

有关versioning或{a8}的更多信息,请参阅官方文档。在

正在上载项目

默认情况下,poetry设置为将包/插件注册到pypi。一旦 您的插件在本地很有用,请运行以下命令:

poetry publish --build

您的项目现在应该可以在PyPI上使用,用户可以通过pip install manim-YourPluginName进行安装,并且可以在各自的内部使用 环境。在

有关publish command的更多信息,请参阅官方文档。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
未绘制java OpenGL顶点   swing无法在Java框架中设置文本   java使用xmemcached客户端访问AWS ElastiCache   java将元素添加到默认arraylist   java从给定位置向后逐个字符地读取文件   java将为此处显示的代码创建多少个对象?   Java异步返回CompletableFuture   java在滚动视图中显示图像   我想为用Netbeans开发的Java项目创建安装程序,并使用Mysql Xampp   java是否可以将COUNT与不同的JPA投影一起使用?   java如何定制javafx。场景图表NumberAxis用于更改20个主要记号的硬编码上限   javajavax。xml。ws。WebServiceException:无法访问WSDL   Jboss中的java多线程   java类不是抽象类,并且不重写抽象方法actionPerformed(ActionEvent)   基于java Spring安全令牌的身份验证   java如何在Spring MVC的自定义验证器中从属性文件中读取参数值   使用OpenCV和java在Android中点击获取图像维度?   java无法解析为变量解析。通用域名格式