我想编辑一个带有“问题”列表的rmarkdown(Rmd)文档,每个问题后面都有它的解决方案。每个解决方案可能包含R控制台的结果,但也有一些解释性(markdown和LaTeX格式)文本。此外,我想使用2个版本的knitr
:使用和不使用解决方案,尽可能少地更改源代码,然后进行编译。
我知道我可以使用逻辑变量来有条件地计算R代码并显示绘图和R输出,但我不知道如何显示/隐藏格式化文本块(markdown和LaTeX),除非我将所有文本放入R字符向量中,这似乎很难保持文本的清晰和可读性。
我发现了这个老问题,
Conditionally display a block of text in R Markdown
其中给出了简单短文本的解决方案,该文本作为R print()
函数的参数包含在内。
另一个老问题,
insert portions of a markdown document inside another markdown document using knitr
我的意思是有一个父文档和一个子文档,它们都是有条件编译的,但是我不想把我的文档分割成这么多块。
3条答案
按热度按时间ds97pgxw1#
您可以使用
asis
引擎有条件地包含/排除knitr中的任意文本,例如wi3ka0sx2#
有一种方法可以隐藏文档的某些部分(包括文本和块):用HTML注解标记注解掉它们。
并且注解标记可以由R根据可以在文档开头设置的变量在块中生成。
title: "Untitled"
date: "15/10/2020"
output:
word_document: default
html_document: default
Start
Always shown.
To hide or not to hide
To be hidden or shown according to hide variable.
End
Always shown.
1wnzp6jl3#
对于那些在通过LaTex编织到pdf时寻找解决方案的人来说,@Pere的答案对你不起作用(因为LaTex不理解
<!---
-->
对表示注解)。以下是一种可能的解决方法:
Included bla bla
NOT Included bla bla