我已经为我的项目设置了一个 Sphinx 文档,并希望提取源文件的文档字符串并将它们嵌入到最终文档中。不幸的是,Sphinx 不支持源文件的语言 (VHDL)。VHDL 似乎没有 Sphinx 域。
所以我的想法如下:
- 挂钩到 Sphinx 运行并在 Sphinx 之前执行一些 Python 代码
- Python 代码从每个源文件(最顶部的多行注释块)中提取文本块,并为每个源文件组装一个 reST 文件,由该注释块和一些其他 reST 标记组成。
- 所有源文件都列在
index.rst
, 中以生成适当的.. toctree::
指令。 - 文本提取和转换是按源代码目录递归完成的。
所以主要问题是:如何连接到 Spinx?
或者我应该只导入并运行我自己的配置conf.py
吗?
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
#
from my_preprocessor import my_proc
proc = my_proc()
proc.run()
#
# Test documentation build configuration file, created by
# sphinx-quickstart on Tue May 24 11:28:20 2016.
# ....
我无法修改构建过程文件:Makefile
并且make.bat
,因为真正的构建过程在 ReadTheDocs.org 上运行。RTD 仅执行conf.py
.