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()
```
是否有更好的解决方案可以为所有代码块启用代码折叠?
答案 0 :(得分:2)
也许R版在这里起作用?对我来说,没有任何修改,您的代码按预期工作:
## R version 3.3.3 (2017-03-06)
## Platform: x86_64-apple-darwin13.4.0 (64-bit)
## Running under: macOS Sierra 10.12.6
至于R studio
Version 1.0.136 – © 2009-2016 RStudio, Inc.
当然,我已经改变了(从你最初的帖子开始)
```{r, engine='bash'}
echo "This code chunk will not be hidden"
与
```{r, engine='bash'}
echo "This code chunk will not be hidden"
```
答案 1 :(得分:1)
您也可以在后期制作中修复它。我使用rmarkdown :: render()(R 3.4.1)和pandoc-1.17.2转换Rmd-> HTML。生成的HTML文件针对不同的语言使用不同的CSS类,但是只有
类“ sourceCode r”支持折叠。因此,只需在
标记中将所有非“ r”类更改为“ r”:perl -i -pe 's/<pre class="sourceCode [^r]+">/<pre class="sourceCode r">/' myfile.html
代码在块中的外观不会改变。