我正在使用sphinx为项目生成html文档。我大量使用field lists。
生成html时,如果标签的长度最多为14个字符,则每个标签/值对将呈现为包含两个单元格的单个表行。
如果一对标签的长度超过14个字符,则标签/值将呈现为两个表格行。
我想将包装限制增加到更大的值(例如40)。我发现限制是由docutils的--field-name-limit
选项控制的。但是,我找不到如何通过sphinx设置此值。
我在文档根目录中创建了一个docutils.conf
文件,其中包含以下内容:
[general]
dump_settings: 1
dump_internals: 1
[html4css1 writer]
field_name_limit: 40
运行sphinx时会读取文件。打印设置和内部 - 由于[general]
部分中的值。在打印值中,field_name_limit
打印为值40
。尽管如此,我所描述的包装仍然出现在html输出中。
如何设置field_name_limit
的值以便获得所需的输出?
答案 0 :(得分:2)
如果没有异议,Sphinx-1.2将支持html writer的docutils.conf。 https://bitbucket.org/birkenfeld/sphinx/commits/67682aca
答案 1 :(得分:0)
我认为你的方法不起作用,因为sphinx使用自己的html编写器。
但是,如果你调整field_name
的风格,我认为它应该有用。
我(曾经)使用自定义css文件
.field-name {
white-space: nowrap;
}
或将其设置为固定宽度。
答案 2 :(得分:0)
执行此操作的一种方法是覆盖扩展原始html构建器的自定义sphinx构建器类中的设置,并在self.settings.field_name_limit = 0
函数中设置prepare_writing(self, docnames)
。也就是说,这有点矫枉过正,除非你已经有了一个自定义构建器类......