如何在重组文本中注释字符串?

pro*_*eek 36 html restructuredtext

HTML的评论是<!-- .. -->,如何使用重组文本制作此注释块?换句话说,如何在重组文本中注释掉一些行?

jba*_*all 62

来自参考:

任意缩进文本可以在显式标记开始之后,并将作为注释元素处理.

.. This is a comment
..
   _so: is this!
..
   [and] this!
..
   this:: too!
..
   |even| this:: !
Run Code Online (Sandbox Code Playgroud)

  • 作为这个有用答案的补充,第一种形式(即,"这是一个评论")应该在实践中使用.基本上,被认为是有害的.为什么?因为条件性.以这种方式定义的任何注释,其第一行与任何现有显式标记构造的语法相匹配(例如,引用,指令,脚注,替换)将被默默地重新解释为该构造而不是注释 - **这是可怕的.**为了防止这种情况,无条件地使用单行`".."`语句为_all_ comments添加前缀,如上例中的其余部分所示. (18认同)
  • 考虑到塞西尔库里所说的,如果@jball首先修改他的例子以显示一个理想的形式,那将是非常好的,所以我不需要阅读所有的细则只是为了在我的reST中添加一个stinkin'评论.此外,我已经假设我可以将任何我想要的内容放入评论中,因此其他示例中的所有额外符号仅用于使其他简单答案复杂化......除非这些符号相关.是吗? (7认同)

Mig*_*ota 18

对于评论,添加 2 个句点,..后跟一个换行符,然后缩进您的评论。

例子:

..
  comment goes here
Run Code Online (Sandbox Code Playgroud)

  • 如何关闭评论? (2认同)

chr*_*own 9

请原谅这个重复的答案,因为我正在努力帮助像我这样的 RST 新手。我的回答显示了评论的上下文。

我天真地尝试使用上面的答案在我的 RST 文档中标记一行,不要这样做

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.
    .. Hi everyone this line will never be seen
    Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Run Code Online (Sandbox Code Playgroud)

Sphinx(或其他 RST 格式化程序)不会抱怨,但“嗨大家好”将出现在输出中。相反,在评论之前和之后放置一个空行,如下所示:

    Lorem ipsum dolor sit amet, consectetur adipiscing elit.

    .. 
        comment Hi everyone this line will never be seen

    Sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Run Code Online (Sandbox Code Playgroud)

但这样做的缺点是段落结束然后重新开始,因此段落之间会有空格。

我没有在 RST 中找到任何可以使某些文本完全消失的 C/* */或 HTML<!-- -->注释语法的等效项。


Dr.*_*. V 6

我遇到了这个线程,寻找一种更明确的方式来在重组文本中放置评论。就个人而言,我当然也不喜欢 one-liner .. this is a comment。为了保持评论的可搜索性和可识别性,我建议考虑使用

.. only:: comment

    This is a comment
Run Code Online (Sandbox Code Playgroud)

正如所记录的(http://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html):“未定义的标签是假的”,例如comment.

或者,你可以写一个todo风格的扩展,允许语法,例如

.. comment::
    This is a comment
Run Code Online (Sandbox Code Playgroud)

在没有这种扩展的情况下这样做当然会给出来自构建器的错误消息。但是有了这样的扩展,就像todo一样,可以从文档中提取评论列表。