Sphinx的标签视图
项目描述
sphinx-tabs
在构建HTML时,在Sphinx文档中创建标签内容。
例如,查看docs/index.rst的[原始]代码,它生成以下内容
在这里可以找到实时演示: https://sphinx-tabs.readthedocs.io
安装
pip install sphinx-tabs
要在Sphinx中启用扩展,请将以下内容添加到您的conf.py中
extensions = ['sphinx_tabs.tabs']
如有需要,有一个配置选项允许考虑额外的构建器兼容。例如,要添加linkcheck
构建器,请将以下内容添加到您的conf.py中
sphinx_tabs_valid_builders = ['linkcheck']
如果您使用Read The Docs来构建文档,则必须将扩展添加为依赖项。请将以下内容添加到项目根目录下的requirements.txt
文件中
sphinx-tabs
贡献
我们欢迎所有贡献!有关详细信息,请参阅EBP 贡献指南。
运行测试的最简单方法是安装pre-commit进行代码检查,以及安装tox进行单元测试和文档构建
$ pre-commit run --all
$ tox -p
基本标签
基本标签可以按以下方式编码
.. tabs::
.. tab:: Apples
Apples are green, or sometimes red.
.. tab:: Pears
Pears are green.
.. tab:: Oranges
Oranges are orange.
可以通过点击希望显示的标签来显示每个标签的内容。点击当前打开的标签将隐藏标签内容,只显示标签集的标签。
或者,可以使用:kbd:Tab
来聚焦标签集。然后可以使用:kbd:左箭头
和:kbd:右箭头
键在标签集中导航,并使用:kbd:Enter
来选择标签。
分组标签
标签可以分组,这样在一个标签集中更改当前标签会同时更改包含具有匹配标签的其他所有标签集中的当前标签。例如
.. tabs::
.. group-tab:: Linux
Linux Line 1
.. group-tab:: Mac OSX
Mac OSX Line 1
.. group-tab:: Windows
Windows Line 1
.. tabs::
.. group-tab:: Linux
Linux Line 1
.. group-tab:: Mac OSX
Mac OSX Line 1
.. group-tab:: Windows
Windows Line 1
如果用户浏览器允许,则更改页面时将记住最后选择的分组标签。因此,如果下一页上的任何标签集中包含具有相同标签的标签,则它将被选中。
代码标签
可以按照以下方式创建包含代码并具有语法高亮的分组标签
.. tabs::
.. code-tab:: c
int main(const int argc, const char **argv) {
return 0;
}
.. code-tab:: c++
int main(const int argc, const char **argv) {
return 0;
}
.. code-tab:: py
def main():
return
.. code-tab:: java
class Main {
public static void main(String[] args) {
}
}
.. code-tab:: julia
function main()
end
.. code-tab:: fortran
PROGRAM main
END PROGRAM main
代码标签还支持自定义词法分析器(通过sphinx conf.py
添加)。将词法分析器的别名作为code-tab
的第一个参数传递。
默认情况下,代码标签使用语言名称进行标记,尽管可以提供一个自定义标记作为code-tabs
指令的第二个可选参数。
.. tabs::
.. code-tab:: c I love C
int main(const int argc, const char **argv) {
return 0;
}
.. code-tab:: py I love Python more
def main():
return
标签标记用于分组标签,包括code-tabs
。因此,应使用相同的自定义标记来分组相关标签。
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。