贡献#

感谢您考虑如何帮助改进这个库!请记住,除了编写错误修复之外,贡献的形式多种多样。贡献到文档,为错误打开新的问题,请求对您发现不清楚的事物的澄清,以及请求新功能,这些都是非常宝贵的贡献。

代码改进#

这个库的所有开发都在 GitHub 上进行 这里。我们建议您使用 Conda 环境(或类似的虚拟环境,例如 venv)。

以下说明使用 Mamba,它是一个非常快的 conda 实现。

git clone <your fork>
cd ipympl
mamba env create --file dev-environment.yml
conda activate ipympl-dev
pre-commit install

安装 Python 包

pip install -e .

在开发您的扩展时,您需要使用笔记本/实验室前端手动启用您的扩展。对于实验室,这是通过以下命令完成的

jupyter labextension develop --overwrite .
jlpm build

对于经典笔记本,您需要运行

jupyter nbextension install --py --symlink --sys-prefix --overwrite ipympl
jupyter nbextension enable --py --sys-prefix ipympl

如何查看您的更改#

Typescript:

如果您使用 JupyterLab 进行开发,那么您可以在不同的终端中同时监视源目录并运行 JupyterLab,以监视扩展源中的更改并自动重建小部件。

# Watch the source directory in one terminal, automatically rebuilding when needed
jlpm watch
# Run JupyterLab in another terminal
jupyter lab

更改后,请等待构建完成,然后刷新浏览器,更改将生效。

Python

如果您对 Python 代码进行了更改,则需要重新启动笔记本内核才能使更改生效。

文档#

我们的文档使用 Sphinxdocs 文件夹中的笔记本构建。它包含 Markdown 文件和 Jupyter 笔记本。

示例最好写成 Jupyter 笔记本。要编写新的示例,请在 docs/examples 目录中创建一个笔记本,并在 index.ipynb 文件中的某个 toctree 下列出其路径。当文档生成时,它们将由 myst-nb 渲染为静态 html 页面。

如果您已安装所有开发依赖项(请参阅 以上),您可以使用以下 make 命令从 docs 文件夹中重建文档

make html

然后,您可以在浏览器中打开 _build/index.html 文件,您现在应该能够看到渲染后的文档。

或者,您可以使用 sphinx-autobuild 持续监视源文件以进行更改并为您重建文档。Sphinx-autobuild 将在您之前创建的开发环境中自动安装,因此您只需运行

make watch

docs 文件夹中

几秒钟后,您的网络浏览器应该会打开文档。现在,每当您保存文件时,文档都会自动重新生成,网页也会为您刷新!

使用 Git#

使用 Git/GitHub 可能很令人困惑 (https://xkcd.com/1597),因此,如果您不熟悉 Git,您可能会发现使用像 GitHub Desktop 这样的程序以及遵循 指南 会很有帮助。

此外,请随时在相关的 GitHub 问题 上寻求帮助/建议。

获取贡献帮助#

欢迎在任何 Github Issue 上提问有关如何贡献的问题。您也可以在 gitter 聊天室 上提出更简短的问题。