新的Sphinx构建器和扩展?

时间:2018-04-23 12:49:44

标签: python-sphinx

在我向错误的方向跑之前,如果向Sphinx添加新的输出格式,可能需要为所有现有的Sphinx扩展添加特殊的案例代码吗?

例如我看到'todo'扩展似乎试图使用admonitions但必须有特殊情况乳胶代码 - 我可能必须对某人可能使用的每个扩展做类似的事情,除非我可以做一些类似的jiggery-pokery重用现有的格式化功能?

1 个答案:

答案 0 :(得分:1)

需要调整使用Sphinx add_node()函数的所有扩展以涵盖新的输出格式。否则,新的输出格式构建器将无法处理自定义节点。不过,你仍然应该能够建立。

但是,让我澄清以下内容:

  • 并非所有扩展程序都使用case class SpecificKey(fieldA: String, fieldB: String)
  • 在许多情况下,您应该能够为新的输出格式注册已有的函数,就像在the example of the extension development tutorial in the Sphinx documentation中一样。
  • 能够覆盖您使用的扩展的add_node()注册,而无需修改扩展的源代码,方法是在项目结束时重新注册节点{{ 1}}文件。