在另一个 RMarkdown 文件中嵌入使用 markdown 语法编写的文本文件
Embed text files written with markdown syntax in another RMarkdown file
我知道这似乎是 中已经回答的问题。
但是,我会尽量把我的情况解释清楚。
- 我正在使用 RStudio 和 RMarkdown 编写 3 个单独的文档。事实上,我没有包含任何块,所以它可能是纯粹的 Markdown 语法。
- 这三个文档(
.Rmd
)共享一些部分,其中三个是相同的。
- 其中还有其他部分不同。
为了高效写作,我想把我提到的三个文档中的公共部分使用 Markdown 语法写在单独的文件中。
这样,我想在三个文档中(在它们各自的位置)包含和link那些共同的部分。
在这方面,我希望 knitr
在转换为 HTML PDF 或 DOCX 时考虑单独和公共部分的语法。我的意思是,如果有副标题、粗体、斜体等,要正确识别和转换。
知道怎么做吗?
有多种方法可以做到这一点。这是我想到的前两个:
使用readLines
:
这基本上是 , but you have to add the chunk option results="asis"
:
中的方法
```{r results="asis"}
cat(readLines('somefile.txt'), sep = '\n')
```
使用 read_chunk
:
您也可以 read multiple code chunks from an external script 然后使用 asis
引擎显示您用 ref.label
:
引用的块
您的 RMD 文件:
```{r}
knitr::read_chunk("mychunks.R")
```
```{asis, ref.label="firstchunk"}
```
```{asis, ref.label="secondchunk"}
```
文件mychunks.R:
## ---- firstchunk
Text
# Header
Text
## ---- secondchunk
Text2
# Header2
Text2
我知道这似乎是
但是,我会尽量把我的情况解释清楚。
- 我正在使用 RStudio 和 RMarkdown 编写 3 个单独的文档。事实上,我没有包含任何块,所以它可能是纯粹的 Markdown 语法。
- 这三个文档(
.Rmd
)共享一些部分,其中三个是相同的。 - 其中还有其他部分不同。
为了高效写作,我想把我提到的三个文档中的公共部分使用 Markdown 语法写在单独的文件中。
这样,我想在三个文档中(在它们各自的位置)包含和link那些共同的部分。
在这方面,我希望 knitr
在转换为 HTML PDF 或 DOCX 时考虑单独和公共部分的语法。我的意思是,如果有副标题、粗体、斜体等,要正确识别和转换。
知道怎么做吗?
有多种方法可以做到这一点。这是我想到的前两个:
使用readLines
:
这基本上是 results="asis"
:
```{r results="asis"}
cat(readLines('somefile.txt'), sep = '\n')
```
使用 read_chunk
:
您也可以 read multiple code chunks from an external script 然后使用 asis
引擎显示您用 ref.label
:
您的 RMD 文件:
```{r}
knitr::read_chunk("mychunks.R")
```
```{asis, ref.label="firstchunk"}
```
```{asis, ref.label="secondchunk"}
```
文件mychunks.R:
## ---- firstchunk
Text
# Header
Text
## ---- secondchunk
Text2
# Header2
Text2