Rmarkdown:如何将目录中的所有 *.bib 文件导入参考书目?

Rmarkdown: how to import all the *.bib files in a directory for bibliography?

在Rmarkdown文件中,如何导入一个目录下的所有*.bib文件作为参考书目?

我有以下文件树

./
./the_Rmd_file_in_question.Rmd
./includes/
./includes/x.bib
./includes/y.bib
...

以下内容无效。

bibliography: 
  - ./includes/*.bib

bibliography: 
   `r library(stringr); str_replace(list.files(path = './report/includes/', pattern = '^.+\.bib$', full.names = TRUE), pattern = './\w+/', replacement = './')`

你可以做到这一点,但这有点棘手。 Pandoc 想要在 bibliography 字段中看到的是

bibliography: ["file1.bib", "file2.bib"]

我可以用这个代码得到它:

bibliography: ["`r paste(c('file1.bib', 'file2.bib'), collapse='\",\"')`"]

鉴于您更新的目录结构,我认为这应该可行:

bibliography: ["`r paste(list.files(path = './includes', pattern = '^.+\.bib$', full.names = TRUE), collapse='\",\"')`"]

list.files()调用会给你可用的名字,你不需要修改它。