如何贡献¶
作者:Nicolas Rougier
前言
对任何前言使用topic
关键字
请确保阅读文档样式指南 [1]以及这些提示,技巧 [2]和有关文档内容和工作流程的约定。
如何贡献? ¶
如果您在讲义中发现拼写错误,不清楚或笨拙的措辞,请帮助改进它们。简单的文本编辑可以通过编辑课堂笔记的GitHub fork中的文件来完成。在讲义的每个html页面上,右上角的edit按钮链接到页面的可编辑源(您仍然需要创建项目的分支)。编辑源代码并选择“为此提交创建一个新分支并启动一个请求”。
选择一个尚未涵盖的主题并写出来!
首先在GitHub上创建一个新问题,以解释您希望涵盖的主题,以便与编辑和贡献者讨论未来教程的范围。
然后在其中一个章节目录(
intro
,advanced
或packages
)内创建一个新目录并创建一个文件index.rst
为新的教程。在相应章节的内容列表中(在index.rst
中)添加新文件。
请记住,教程将在不同的地方教授,并且不同的部分可以合并到一个关于Python的科学计算课程中。因此,你希望他们互动并合理地短(一到两个小时)。
最后但并非最不重要的一点是,本材料的目标是提供一个简洁的文本来学习科学Python生态系统的主要特征。如果您想参考参考资料,我们建议您为您感兴趣的特定软件包的文档做出贡献。
使用GitHub ¶
制作你自己版本的教材最简单的方法就是将它分发到GitHub中,并使用git版本控制系统来维护你自己的分支。为此,您只需在GitHub上创建一个帐户并单击fork按钮,在此页面的右上角。你可以使用git从你的fork中拉取,然后推回到更改。如果您想要返回更改,只需使用叉子页面顶部的按钮填充拉取请求即可。
学习git和GitHub的在线可以找到几种资源,例如https://try.github.io,供完整的初学者使用。
除非绝对必要,否则请不要修改Makefile。
保持简洁:折叠段落 ¶
HTML输出用于在教学时显示在屏幕上。目标是显示与笔记中相同的材料。因此,需要有一个非常简洁的显示,使用子弹列表而不是完整的段落和句子。有关人们可以阅读和参考的更详细的讨论,请使用tip
sphinx指令。它创建可折叠的段落,可以在口头陈述中隐藏:
.. tip::
Here insert a full-blown discussion, that will be collapsable in
the HTML version.
It can span on multiple paragraphs
这呈现为:
小费
这里插入一个全面的讨论,这将在HTML版本中进行折叠。
它可以跨越多个段落
数字和代码示例 ¶
我们不检查资料库中的数字。任何数字必须从需要命名为plot_xxx.py
(xxx可以是任何东西)并放入examples
目录的python脚本生成。生成的图像将从脚本名称命名。
这是包含图像并将其链接到代码的方式:
.. image:: auto_examples/images/sphx_glr_plot_simple_001.png
:target: auto_examples/plot_simple.html
您可以使用literal-include
指令显示相应的代码。
"""
A simple example
=================
"""
import numpy as np
import matplotlib.pyplot as plt
X = np.linspace(-np.pi, np.pi, 100)
Y = np.sin(X)
plt.plot(X, Y, linewidth=2)
plt.show()
注意
Python脚本转换为示例的图形和画廊由sphinx-gallery包提供。
使用标记 ¶
应该使用三种主要的标记:斜体,粗体和fixed-font
。引入新技术术语时应使用斜体字,对于源代码,应使用粗体和fixed-font
。
例:
在Python中使用面向对象编程时,必须使用class
关键字定义您的类。
在重组文本标记中,这是:
when using *object-oriented programming* in Python you **must** use the
``class`` keyword to define your *classes*.
链接到包文档 ¶
scipy讲义的目标不是复制或替换各种软件包的文档。您应尽可能地链接到原始文档。
对于交叉引用API文档,我们倾向于使用intersphinx扩展。这提供了分别与模块,类和函数交叉连接的指令:mod:,:class:和:func:。例如,:func:`numpy.var`
会创建一个链接,如numpy.var()
。