PyData 主题元素#
这是一组内容块,由该主题的父主题 PyData Sphinx 主题 提供特殊支持。
这个主题有一些独特或特别重要的元素。其中一些元素通过该主题独有的配置或 Markdown 语法触发,我们将在下面介绍它们。
数学#
大多数 Sphinx 站点都支持数学公式,但对于科学计算来说,这一点尤为重要,因此我们在这里也展示了相关支持。
以下是行内公式:\(X_{0:5} = (X_0, X_1, X_2, X_3, X_4)\) 以及 \(another\) 和 \(x^2 x^3 x^4\) 另一个。这里还有测试垂直高度的公式:\(\frac{\partial^2 f}{\partial \phi^2}\)。以下是块级公式:
这里是带有标签的非常长的公式!
代码块#
代码块样式灵感源自 GitHub 的代码块样式,并且还支持代码块的标题/说明。更多信息请参阅 Sphinx 关于代码块的文档。
print("A regular code block")
print("A regular code block")
print("A regular code block")
你还可以为代码块提供说明,这些说明将显示在代码的正上方。例如,以下代码:
.. code-block:: python
:caption: python.py
print("A code block with a caption.")
```{code-block} python
:caption: python.py
print("A code block with a caption.")
```
results in:
print("A code block with a caption.")
你还可以显示行号。例如,以下代码:
.. code-block:: python
:caption: python.py
:linenos:
print("A code block with a caption and line numbers.")
print("A code block with a caption and line numbers.")
print("A code block with a caption and line numbers.")
```{code-block} python
:caption: python.py
:linenos:
print("A code block with a caption and line numbers.")
print("A code block with a caption and line numbers.")
print("A code block with a caption and line numbers.")
```
results in:
1print("A code block with a caption and line numbers.")
2print("A code block with a caption and line numbers.")
3print("A code block with a caption and line numbers.")
内联代码#
直接使用时,code
角色仅以字面形式显示文本,不进行语法高亮。如 Sphinx 文档 中所述,你还可以通过定义自定义角色来启用语法高亮。之后,它将使用与 code-block
指令相同的语法高亮器。
.. role:: python(code)
:language: python
In Python you can :python:`import sphinx`.
```{role} python(code)
:language: python
```
In Python you can {python}`import sphinx`.
在 Python 中,你可以 import sphinx
。
代码执行#
此主题支持 Jupyter 执行库,因此你可以在每次构建时以编程方式更新文档。例如,请参阅 Jupyter notebooks。
脚注#
这里是数字脚注1Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar.,另一个(前面有空格)2Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar.,命名脚注3Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar.,以及符号脚注4Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar. Foo bar foo bar.。所有这些在渲染后的 HTML 中都会显示为数字,但在源代码中它们分别看起来像 [^1]
、[^2]
、[^named]
和 [^*]
。
为 Git 仓库服务提供的链接缩短功能#
许多项目都有指向托管在 GitHub 或 GitLab 等平台上的问题/PR的链接。与直接显示这些原始链接不同,此主题针对这些平台进行了一些轻量级的格式化处理。
在 reStructuredText 中,URL 会自动转换为链接,因此这是自动生效的。
在 MyST Markdown 中,默认情况下,你必须定义标准的 Markdown 链接,并在链接文本中重复 URL。可以通过激活 MyST Linkify 扩展来跳过手动定义链接文本的需求。
示例:
reStructuredText
https://github.com/pydata/pydata-sphinx-theme/pull/1012
https://github.com/pydata/pydata-sphinx-theme/pull/1012
MyST Markdown (default)
[https://github.com/pydata/pydata-sphinx-theme/pull/1012](https://github.com/pydata/pydata-sphinx-theme/pull/1012)
MyST Markdown with MyST Linkify
https://github.com/pydata/pydata-sphinx-theme/pull/1012
https://github.com/pydata/pydata-sphinx-theme/pull/1012
There are a variety of link targets supported, here's a table for reference:
GitHub
https://github.com
: https://github.comhttps://github.com/pydata
: https://github.com/pydatahttps://github.com/pydata/pydata-sphinx-theme
: https://github.com/pydata/pydata-sphinx-themehttps://github.com/pydata/pydata-sphinx-theme/pull/1012
: https://github.com/pydata/pydata-sphinx-theme/pull/1012https://github.com/orgs/pydata/projects/2
: https://github.com/orgs/pydata/projects/2
GitLab
https://gitlab.com
: https://gitlab.comhttps://gitlab.com/gitlab-org
: https://gitlab.com/gitlab-orghttps://gitlab.com/gitlab-org/gitlab
: https://gitlab.com/gitlab-org/gitlabhttps://gitlab.com/gitlab-org/gitlab/-/issues/375583
: https://gitlab.com/gitlab-org/gitlab/-/issues/375583
Links provided with a text body won't be changed.