RMarkdown:pandoc命令中的多个输入文件

时间:2015-11-21 19:49:29

标签: r knitr r-markdown pandoc

Pandoc显然可以读取多个文件的输入。 Documentation says:

pandoc [options] [input-file]…

  

如果给出了多个输入文件,pandoc会将它们全部连接起来   (解析之前有空行)。

我有:

main.Rmd

---
output:
  pdf_document
---

After the above YAML front-matter, additional YAML input follows:

---
myparams: blabla
whatnot: testtest
---

Now the main body follows, using $myparams$ and $whatnot$ from the second YAML block...

问题:

如何将第二个YAML块分离到自己的文件中并将rmarkdown / knitr指向它,以便它们发出带有两个输入文件而不是一个输入文件的pandoc命令?我可以以某种方式在YAML前面指定path-to\separate.yaml资产吗?

$pandoc main.md separate.yaml --output main.pdf`

separate.yaml

---
myparams: blabla
whatnot: testtest
---

main.Rmd

---
input-files: path-to/separate.yaml
output:
  pdf_document
---

Now the main body follows, having access to 
$myparams$ and $whatnot$ from the separate  YAML file...

1 个答案:

答案 0 :(得分:0)

  

如何将第二个YAML块分离到自己的文件中并将rmarkdown / knitr指向它,以便它们发出带有两个输入文件的pandoc命令而不是一个?

我过去遇到过类似的问题,但我不需要YAML标头,因此我预先处理了删除YAML标头并合并文件的文件。我建议你做类似的事情,创建自己的脚本来预处理文件,然后再发送给rmarkdown / knitr。

  

我可以以某种方式在YAML前面指定路径到\ separate.yaml资产吗?

不,你不能。