注释掉Rmd文件的一些块/部分

时间:2017-09-11 04:15:07

标签: r rstudio knitr r-markdown

是否可以注释掉包含多个块的Rmd文件的一部分(例如:4-5)?常规HTML comments无效。

---
title: "Untitled"
author: "author"
date: "5 August 2017"
output: pdf_document
---

```{r}
print(123)
```

```{r}
2**2
```
<!-- 
# Comment section starts

This text is not visible in the output.

```{r}
a <- 3*4
a
```
This text not be visible in the output.

# Comment section ends
-->

```{r}
print(1)
```

在过去,我记得在SO帖子的某处读到它是针对下一版knitr的。

更新:我不是在寻找在每个块中使用eval=FALSE的解决方案,因为我需要在块之间注释掉文本。此外,我正在寻找一种优雅的方式来做到这一点。

以上代码输出pdf输出如下:

enter image description here

令人惊讶的是,它有效。但是相同的HTML注释(<!-- -->)在另一个原始Rmarkdown脚本中不起作用。跳过部分Rmd文件的部分只有在包含我想跳过执行的代码的下面片段后才能实现。

<!-- 
# Comment section starts

```{r, include=FALSE}
knitr::opts_chunk$set(eval= FALSE)
```

This is added to the end of the comment:
  ```{r, include=FALSE, eval=TRUE}
knitr::opts_chunk$set(eval= TRUE)
```
-->

有人可以向我解释一下这个问题是什么问题吗?

1 个答案:

答案 0 :(得分:0)

我想发布对此问题的更新答案,因为新版本中的情况已发生变化。 html注释<!-- -->现在可以实现此目的。因此html注释标签之间的所有内容都不会运行或包含在针织文档中。

---
  title: "Untitled"
author: "author"
date: "5 August 2017"
output: pdf_document
---

  ```{r}
print(123)
```

```{r}
2**2
```
<!-- 
  # Comment section starts

  This text is not visible in the output.

```{r}
a <- 3*4
a
```
This text not be visible in the output.

# Comment section ends
-->

  ```{r}
print(1)
```