SmC*_*lar 2 python documentation latex pdf-generation python-sphinx
我有一个相当复杂的项目,有相当大的文档.通过Sphinx 将普通用户指南转换为PDF make latexpdf可以很好地工作.但是,如果我还想将库引用包含在所有函数,类和模块文档中,则该命令将失败:
! LaTeX Error: Too deeply nested.
Run Code Online (Sandbox Code Playgroud)
手动减少嵌套不是一种选择.Sphinx内部嵌套参数描述,功能描述,模块描述等等.因此,在每种情况下弄清楚如何减少嵌套几乎是不可能的.
我通过在sphinx序言中添加一些乳胶语句来解决问题.因此,我latex_preamble.tex在我的sphinx 源文件夹中创建了一个新文件.它只包含以下两个命令:
\usepackage{enumitem}
\setlistdepth{99}
Run Code Online (Sandbox Code Playgroud)
此外,在conf.py文件中,也在我的源文件夹中,我更改了以下内容(您可以latex_elements在conf.py文件中查找变量,通常会将其注释掉):
fh = open('latex_preamble.tex', 'r+')
PREAMBLE = fh.read()
fh.close()
latex_elements = {
# Additional stuff for the LaTeX preamble.
'preamble': PREAMBLE,
}
Run Code Online (Sandbox Code Playgroud)
因此,现在sphinx使用enumitem允许任意嵌套的包.我想现在enumitem应该是任何乳胶分销的一部分.我不需要安装包.此外,这也开箱即用,阅读文档.