## 11.12 Remove leading hashes in text output

By default, R code output will have two hashes ## inserted in front of the text output. We can alter this behavior through the comment chunk option, which defaults to a character string "##". We can use an empty string if we want to remove the hashes. For example:

{r, comment=""}
1:100


Of course, you can use any other character values, e.g., comment = "#>". Why does the comment option default to hashes? That is because # indicates comments in R. When the text output is commented out, it will be easier for you to copy all the code from a code chunk in a report and run it by yourself, without worrying about the fact that text output is not R code. For example, in the code chunk below, you can copy all four lines of text and run them safely as R code:

1 + 1
## [1] 2
2 + 2
## [1] 4

If you remove the hashes via comment = "", it will not be easy for you to run all the code, because if you copy the four lines, you will have to manually remove the second and fourth lines:

1 + 1
[1] 2
2 + 2
[1] 4

One argument in favor of comment = "" is that it makes the text output look familiar to R console users. In the R console, you do not see hashes in the beginning of lines of text output. If you want to truly mimic the behavior of the R console, you can actually use comment = "" in conjunction with prompt = TRUE, e.g.,

{r, comment="", prompt=TRUE}
1 + 1
if (TRUE) {
2 + 2
}


The output should look fairly familiar to you if you have ever typed and run code in the R console, since the source code contains the prompt character > and the continuation character +:

> 1 + 1
[1] 2
> if (TRUE) {
+   2 + 2
+ }
[1] 4