Pandoc
может, очевидно, читать данные из нескольких файлов. Documentation says::RMarkdown: Несколько входных файлов в команде pandoc
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 блок в отдельный файл и точка/knitr
к нему , так что они выдают команду pandoc с двумя входными фильтрами вместо одного? Могу ли я как-то указать, что path-to\separate.yaml
актив в лицевой части 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...
Спасибо. Можете ли вы показать минимальный рабочий код, который добавляет файл 'separate.yaml' с файлом' main.Rmd' и обрабатывает объединенный файл с knitr? Это было бы полезно, спасибо –
@ DanielKrizian вы можете использовать 'head -n -1', чтобы получить« начало »' separate.yaml', и вы можете использовать 'tail -n + 2', чтобы получить« конец »' main.Rmd'. Используя эти две команды, вы можете легко объединить два файла. –