作为构建命令的一部分,更改sphinx conf.py中的变量

本教程将介绍作为构建命令的一部分,更改sphinx conf.py中的变量的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

作为构建命令的一部分,更改sphinx conf.py中的变量 教程 第1张

问题描述

我有一个带有conf.py的Sphinx项目,其中我使用一个变量来指定我的产品名称,如下所示:

device_name = "ProductName"
rst_epilog = f".. |device_name| replace:: {device_name}"

我希望能够在构建过程中将ProductName的值作为.bat文件的一部分进行修改,因为我正在构建同一项目两次,分别针对我的两个产品:

sphinx-build  -t ce2 -b html -d _build_ce2/doctrees source _build_ce2/html -E
sphinx-build  -t ce1 -b html -d _build_ce1/doctrees source _build_ce1/html -E

有什么办法直接在Build命令中修改conf.py变量device_name

推荐答案

我最终使用环境变量解决了此问题。

conf.py

# get environment variables (set as part of make .bat files)
env_device_name = os.getenv("DEVICENAME")

# set device name
if env_device_name != None:
 device_name = env_device_name
else:
 device_name = "CANedge2"  # default device name

make.bat

SET DEVICENAME=Product2
sphinx-build  -t ce2 -b html -d _build_ce2/doctrees source _build_ce2/html -E
SET DEVICENAME=Product1
sphinx-build  -t ce1 -b html -d _build_ce1/doctrees source _build_ce1/html -E

好了关于作为构建命令的一部分,更改sphinx conf.py中的变量的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。