Python sphinx 如何处理ReST中的两个破折号
我使用Sphinx来记录用Python编写的命令行实用程序。我希望能够记录命令行选项,例如Python sphinx 如何处理ReST中的两个破折号,python-sphinx,restructuredtext,Python Sphinx,Restructuredtext,我使用Sphinx来记录用Python编写的命令行实用程序。我希望能够记录命令行选项,例如--region,如下所示: **--region** <region_name> **---region** <region_name> HTML生成正确,但现在我的手册页中有--而不是--。也不正确 我尝试过用反斜杠字符(例如,\-\-)来转义破折号,但没有效果 任何帮助都将不胜感激。这是Sphinx中默认启用的配置选项:html\u use\u smartypants选
--region
,如下所示:
**--region** <region_name>
**---region** <region_name>
HTML生成正确,但现在我的手册页中有--
而不是--
。也不正确
我尝试过用反斜杠字符(例如,\-\-
)来转义破折号,但没有效果
任何帮助都将不胜感激。这是Sphinx中默认启用的配置选项:
html\u use\u smartypants
选项()
如果关闭该选项,则如果需要一个en破折号,则必须使用Unicode字符“–”。要添加两个破折号,请添加以下内容:
.. include:: <isotech.txt>
|minus|\ |minus|\ region
。。包括:
|负| \ |负| \区域
注意倒斜杠和空格。这样可以避免在减号和参数名称之间留有空格
每页只需包含isotech.txt
一次
使用此解决方案,您可以保留扩展smartypants,并在所需文本的每个部分中写入两个破折号。不仅在选项列表或文本中。在Sphinx 1.6中,而且不再需要在conf.py
中设置html\u使用\u smartypants=False
,或者将其作为Sphinx build
的参数。相反,您应该使用smart\u quotes=False
如果要使用以前由html\u use\u smartypants
提供的转换,建议使用,例如smart\u quotes=True
请注意,在撰写本文时,请阅读文档pinssphinx==1.5.3
,它不支持smart\u quotes
选项。在此之前,您需要继续使用html\u use\u smartypants
编辑斯芬克斯现在似乎使用了而不是docutils。h/t@bad_编码器。带
**-\\-region** <region_name>
**-\\-地区**
它应该可以工作。正如@mzjn所评论的,解决原始提交者需求的最佳方法是使用 格式很简单:一系列以
-
、-
、+
或/
开头的行,后跟实际选项,(至少)两个空格,然后是选项的说明:
-l long listing
-r reversed sorting
-t sort by time
--all do not ignore entries starting with .
选项和描述之间的空格数量可能因行而异,只需至少两行,这样就可以清楚地显示源代码和生成的文档(如上所述)
选项列表也有一个选项参数的语法(只需在两个空格前加上一个附加单词或几个包含在
中的单词);有关详细信息,请参见链接页面
本页上的其他答案针对原始提交人的问题,这一个解决了他们的实际需要。我发现一个简单的解决方案是将双连字符包装在代码标记中,例如,`--region``而不是**--region**。也许有更优雅的方法来解决这个问题,但这对我来说是可行的。也许你可以使用一个选项列表:是的,这似乎有点合适。谢谢,在ReST中仍然不断发现新事物!这当然是一个解决办法。我认为这个行为是错误的,因为它不太难用EnDASH首先替换“-----”和用EdMaS'来'-',并且在这个特性中,例如“代码>:命令:‘狮身人面像构建-版本’< /代码>产生一个“打印正确”的命令行:<代码>狮身人面像构建-版本< /代码>……通知读者,语法已更改为。正是这种一行配置解决了我的双破折号问题。