Sphinx别名支持(替代?)

时间:2019-01-29 15:46:49

标签: documentation python-sphinx

我正在考虑将文档从Doxygen迁移到Sphinx,并寻找Doxygen别名的替代方法。

在Doxygen中,我有一个别名,可以将复杂的命令(如表格)替换为这种更易读的格式(这只是一个示例,而我有更复杂和嵌套的示例):

   table_row2{2}=<tr><td align= center>\1</td><td align= center>\2</td></tr> 

 limited_res{1}=The number of supported \1 depends on the specific platform. See the \ref appendixes section" 

它可以在这样的文档中使用:

...
table_h2{ Resource Name, Value }  
table_row2{ MAC Entries , 256}
table_row2{ Ingress Flow , \limited_res { Ingress Flow } }
...

我在Sphinx中找到的最接近的东西是替换,但是即使对于简单的命令替换,我也很难使它工作,如下所示:

.. |H1| replace:: `*****************************************************`

My section
|H1|

H1不编译或仅打印'* ... *'。

我不确定这是语法问题还是无法解决。我试图避免记住* / + /-/ =中的哪一个意味着什么,并按嵌套级别对其进行命名。这几天我的记忆不太好:)

还有一个更重要的问题:替换似乎不接受我认为必不可少的参数。

我可以考虑的另一种选择是编写诸如this之类的扩展名,但是我希望有一个更简单的方法。

任何帮助/指针将不胜感激。

谢谢, 伊利亚

1 个答案:

答案 0 :(得分:0)

要使星号出现在“我的部分”下方,您需要至少有一个空行将“我的部分”与“ | H1 |”分开。 Sphinx / docutils中的空格具有含义,分隔的内容被解释为两段而不是嵌入式文本。

.. |H1| replace:: `*****************************************************`

My section

|H1|

要显示反引号,请使用反斜杠字符\对其进行转义。

.. |H1| replace:: \`*****************************************************\`

My section

|H1|

如果要插入原始字符,可以使用raw directive

编辑

这将创建一个section

My section
==========

两个段落之间的空白行将生成段落,如上所述。

相关问题