【发布时间】:2017-02-21 17:34:51
【问题描述】:
R Markdown 现在可以在您的 .Rmd 文档中自动选择show or hide code chunks。但是,这似乎只适用于 R 代码块。
---
output:
html_document:
code_folding: hide
---
```{r}
print("This code chunk will be hidden")
```
```{r, engine='bash'}
echo "This code chunk will not be hidden"
```{r, engine='python'}
print "Will this code chunk be hidden?"
```
```{r}
system('uname -srv',intern=T)
sessionInfo()
```
我能想到的唯一解决方案是将代码隐藏在空白选项卡后面
---
output:
html_document:
code_folding: hide
---
```{r}
print("This code chunk will be hidden")
```
# Source code {.tabset .tabset-pills}
## Hide Code
## Show Code
```{r, engine='bash'}
echo "This code chunk will not be hidden"
```
```{r, engine='python'}
print "Will this code chunk be hidden?"
```
```{r}
system('uname -srv',intern=T)
sessionInfo()
```
有没有更好的解决方案可以为所有代码块启用代码折叠?
【问题讨论】:
-
code_folding: hide 是否等同于在初始化时设置
knitr::opts_chunk$set(echo = FALSE)? -
没有。 “代码折叠”是一个独特的功能。您提到的
knitr选项可防止所有(或选定的)代码块完全出现在文档中。代码折叠会在文档中放置一个标记为“代码”的小按钮,单击它会显示或隐藏代码块。这允许最终用户在编译的文档中切换代码可见性。 -
本质上,knitr 选项在 .Rmd 文件编译为 .md 时生效。当 pandoc 将 .md 文件编译为 HTML 时,此功能以及嵌入在 YAML 文件头中的其他功能生效。
-
您可能需要稍微调整一下代码,但这可能会有所帮助:stackoverflow.com/questions/37755037/…
-
@MartinDabbelJuSmelter 非常感谢您指出这一点,我会调查的。巧合的是,弄清楚如何在我的 RMarkdown 中编写和嵌入我自己的自定义 JavaScript 是我的待办事项列表中的下一个。
标签: python r bash markdown r-markdown