点击这里跳转本文的发布地址
点击这里跳转本文的github源码地址
摘抄中文维基词条
简单地说, reStructuredText是一种标记语言 (类似html) ,而sphinx把组织起来的reStructuredText生成为文档. 事实上, python相关的文档都是通过这种方式生成的.
需要安装
pip install sphinx sphinx-autobuild furo
创建一个放置文档的文件夹, 可命名为docs
mkdir docs && cd docs
在文件夹下使用sphinx命令快速构建一个初始文档, 输入该命令后会有几次交互, 可以按照自己的意愿填入相应的值, 也可不填后续再改动
sphinx-quickstart
下面按照 源文件生成目录分离 项目名sample 项目作者hongyuan 项目语言zh来快速构建一个文档
若按照上文顺序, 生成的文件目录如下:
docs
├── Makefile
├── build
├── make.bat
└── source
├── _static
├── _templates
├── conf.py
└── index.rst
编译文档: 将source中的源文件编译到build文件夹中的html文件夹
sphinx-build ./source ./build/html
打开文档: 打开docs/build/html中的index.html文件, 即可看到模板文档, 样式如下:
在本节中我们对第三节生成的模板文档进行修改, 修改的点有以下几个:
为了简便起见, 我们使用自动编译, 在docs文件夹下打开终端, 输入
sphinx-autobuild ./source ./build/html
该命令将source文件夹中的文件自动编译到build/html中
本节我们增加两个页面, 分别为“第一章”和“第二章”, 并将两个页面索引在主页中, 增加后效果如下
第一章
================
欢迎来到示例文档
==================================
.. toctree::
:maxdepth: 2
:caption: 目录:
第一章
第二章
现在打开 (刷新) index.html, 页面已经增加成功
在4.1中实际上我们已经增加过目录, 增加目录的格式非常简洁, 我们只要在文本下加上多个连续的符号 (如+, =, -, #, @等) 即可, 同级标题使用同样的连续符号即可.
示例
第一节
---------
第二节
---------
2.1 小节一
==============
2.2 小节二
++++++++++++++++
注意空行
正文可在文档页面的任何地方书写, 使用双星号加粗, 单星号加斜, 我们在第一章中加一点内容:
**这里是粗体**, *这里是斜体*, 这里是普通文本.
我们在第一章中加入python文档的链接, 注意文本和链接之间的空格, 以及末尾的下划线
这里是 `Python文档链接 `_
列表格式与markdown相似, 我们在第一节中加入一个有序列表和一个无序列表
1. 第一条
2. 第二条
3. 第三条
* 第一条
* 第二条
* 第三条
我们在第二节增加一个批注
.. note::
此处是一个标注
在小节一增加一个表格:
+------+------+------+
| A | B | C |
+======+======+======+
| 1A | 1B | 1C |
+------+------+------+
| 2A | 2B | 2C |
+------+------+------+
插入图片格式如下
.. image:: img_path
我们放一张图片在/source/_stastic下, 然后将其放入小节一
.. image:: ./_static/sample.png
我们在小节二中插入一个数学公式
.. math::
x = y \times z + \sum_{(i, j)}f(i, j)
我们在上文已经安装过了furo主题, 现在我们将文档的主题替换为furo.
打开和index.rst同级目录下的conf.py文件, 将html_theme的内容修改为“furo”, 即
html_theme = "furo"
可以通过readthedocs网站免费发布文档, 点击这里跳转本文的发布地址
首先在docs目录中创建一个名为.readthedocs的配置文件, 写入以下内容
version: 2
formats:
- epub
build:
os: ubuntu-20.04
tools:
python: "3.9"
# nodejs: "16"
# rust: "1.55"
# golang: "1.17"
sphinx:
configuration: source/conf.py
python:
install:
- requirements: requirements.txt
然后在docs目录中创建一个名为requirements.txt写我们项目需要的依赖, 我们只安装了一个furo主题, 因此写入furo即可
不做介绍