You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让Rmd中的注释不出现在渲染后的HTML源码中?

问题:如何让Rmd注释仅保留在源码中,不输出到HTML源码?

编译Rmd文档后查看生成的HTML源码时,发现用<!-- ... -->写的HTML注释会被保留在源码里。我希望这类注释只留在Rmd源码中,不会出现在最终的HTML源码内。目前我已经在用eval=FALSE的R代码块来存放注释,但想知道有没有其他更合适的实现方式。

示例Rmd代码

---
output: html_document
---

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

R Markdown

### 当前使用的替代方法
```rmarkdown
```{r, eval=FALSE}
# Don't show me in the HTML source please because I want to be secret!
# 可行的替代方法

- **纯R风格单行注释**:直接在Rmd中写以`#`开头的注释,不需要包裹在代码块里。只要这些注释不是Markdown段落的组成部分,knitr会直接忽略它们,不会输出到HTML或其他格式的文档中,自然也不会出现在HTML源码中:
  ```rmarkdown
  ## R Markdown

  # Don't show me in the HTML source please because I want to be secret!

这是最简洁直接的方式。

  • Pandoc块注释语法:如果需要在Markdown文本行内插入注释,可以使用/* ... */格式,Pandoc在渲染过程中会完全移除这类注释,不会在HTML源码中留下任何痕迹:

    ## R Markdown
    /* Don't show me in the HTML source please because I want to be secret! */
    
  • 自定义knitr钩子(进阶):如果有大量这类注释需要统一处理,可以编写knitr钩子函数自动过滤特定格式的注释。不过这种方式适合复杂场景,日常使用前两种方法就足够。

内容的提问来源于stack exchange,提问作者Patrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 19:35:24