How to comment a string in restructured text?
Solution 1
Arbitrary indented text may follow the explicit markup start and will be processed as a comment element.
..
_This: is a comment!
..
[and] this!
..
this:: too!
..
|even| this:: !
It is also possible to put the comment on the same line as the double dots:
.. Avoid this type of comment
This is however considered bad practice since it may lead to unintended consequences if the comment matches a proper markup construct, as pointed out by @CecilCurry in the comment below.
Solution 2
For comments, add 2 periods ..
followed by a newline and then your comment indented.
Example:
..
comment goes here
Solution 3
I came across this thread, looking for a more defined way to place comments in restructuredtext. Personally, I also of course don't like the one-liner .. this is a comment
. To keep comments searchable and recognizable, I propose to consider using
.. only:: comment
This is a comment
As documented (http://www.sphinx-doc.org/en/master/usage/restructuredtext/directives.html): "Undefined tags are false", such as comment
.
Alternatively, one could write an extension in the style of todo, allowing syntax, such as
.. comment::
This is a comment
Doing so without such extension of course gives error messages from the builder. But with such extension, just like todo, it would be possible to extract a list of comments from a document.
Solution 4
Please forgive this duplicative answer cos I'm trying to help RST newbies like me. My answer shows the CONTEXT of a comment.
I naively tried marking a line in my RST document using the answer above, DO NOT DO THIS:
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.
Sphinx (or other RST formatter) will not complain, but "hi everyone" will appear in the output. Instead place a blank line before and after your comment like this:
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.
But the downside of this is that the paragraph is ended then restarted, so you will have whitespace between.
I have not found any equivalent in RST for the C /* */
or HTML <!-- -->
comment syntax that can make some text vanish totally.
Related videos on Youtube
prosseek
A software engineer/programmer/researcher/professor who loves everything about software building. Programming Language: C/C++, D, Java/Groovy/Scala, C#, Objective-C, Python, Ruby, Lisp, Prolog, SQL, Smalltalk, Haskell, F#, OCaml, Erlang/Elixir, Forth, Rebol/Red Programming Tools and environments: Emacs, Eclipse, TextMate, JVM, .NET Programming Methodology: Refactoring, Design Patterns, Agile, eXtreme Computer Science: Algorithm, Compiler, Artificial Intelligence
Updated on July 05, 2022Comments
-
prosseek almost 2 years
The comment of HTML is
<!-- .. -->
, how can I make this comment block with restructured text? In order words, how can I comment out some of the lines in restructured text? -
Nathaniel M. Beaver almost 8 yearsThis answer would be better with an example.
-
Cecil Curry almost 8 yearsThis is an awful answer. The conditionality of reStructuredText comments overly complicates matters. A pithy "RTFM" followed by a single-line quote does not suffice here. What does and does not constitute a valid comment lexically depends on the content of that comment and the syntax used to specify that comment. It's non-trivial, non-obvious, and tragically fragile.
-
Cecil Curry almost 8 yearsAs an addendum to this helpful answer, the first form (i.e.,
".. This is a comment"
) should never be used in practice. Basically, considered harmful. Why? Because conditionality. Any comment defined in this way whose first line matches the syntax of any existing explicit markup construct (e.g., citation, directive, footnote, substitution) will be silently reinterpreted as that construct rather than as a comment – which is horrible. To prevent this, unconditionally prefix all comments with a single-line".."
statement as in the remainder of the above examples. -
JFlo over 6 yearsGiven what Cecil Curry has stated, it would be very nice if @jball would revise his example to show an ideal form first so I needn't read all the fine print just to put a stinkin' comment in my reST. Also, I already assume I can put whatever I want into a comment, so all the extra symbols in the other examples only serve to complicate an otherwise simple answer ... unless those are relevant. Are they?
-
mhsmith about 6 years@CecilCurry: Just like everything else in RST then.
-
Anthon almost 6 years@CecilCurry Thanks for your insight, I corrected my
ryd
documentation with that (And so we meet again!) -
sygibson about 4 years@mhsmith - every language has it structures and syntax rules. RST is not immune to this immutable law.
-
Kermit over 3 yearsSo is line_1
..
with line_2This is a comment
fine? That is to say, could you delete the_
and:
from line_2 of your first example? It runs fine, but not sure implications. -
pepoluan over 3 yearsWhat about using
.. ..
? (dot dot space dot dot space) I've been using that on my .rst files...