Sphinx(文档工具):设置输出中的制表符宽度
在使用Sphinx生成的HTML中,如何设置Pygments高亮代码片段的制表符宽度?默认情况下,制表符宽度是8个空格,这让人很烦,但我想要4个空格。没有在Sphinx的配置文件conf.py中找到关于这个设置的任何信息。
6 个回答
1
在2023年,使用Sphinx v6.1.3的时候,我通过在源文件夹里放一个叫做 docutils.conf
的文件来解决了这个问题,这个文件里只有以下内容:
[restructuredtext parser]
tab_width: 4
结果成功了!
我是在 这里 找到这个小窍门的。
3
在你的conf.py文件中添加类似下面的内容:
import re
def process_docstring(app, what, name, obj, options, lines):
spaces_pat = re.compile(r"( {8})")
ll = []
for l in lines:
ll.append(spaces_pat.sub(" ",l))
lines[:] = ll
def setup(app):
app.connect('autodoc-process-docstring', process_docstring)
另外,你可以查看Sphinx的文档字符串预处理相关说明。
0
你需要写一个Sphinx扩展。首先,添加你自己的Lexer,然后用VisibleWhitespaceFilter来应用它。