如何让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
相关产品推荐
相关产品推荐

