Можно ли поместить файл .bib в другую папку, чем та, где находится файл .Rmd? - PullRequest
1 голос
/ 02 апреля 2020

Я пишу отчет, и мне нужно будет сделать устную презентацию по этому вопросу. Поэтому у меня есть папка с файлом .Rmd для редактирования и другая папка с другим файлом .Rmd для презентации.

Поскольку я собираюсь использовать один и тот же файл .bib для этих двух файлов. .Rmd файлов, мне было интересно, смогу ли я поместить .bib "выше" этих двух папок, например:

Some folder
    |_ references.bib
    |_ redaction
           |_ redaction.Rmd
    |_ presentation
           |_ presentation.Rmd

Конечно, я мог бы просто скопировать-вставить references.bib из redaction папка в папку presentation, но я думаю, что приведенная выше организация будет более чистой.

Для этого потребуется указать путь к файлу bib в YAML обоих файлов Rmd. Возможно ли это сделать?

Просто YAML для одного из Rmd файлов:

---
title: "A title"
author: "John Doe"
date: 02/04/2020
output: 
  bookdown::pdf_document2:
citation_package: biblatex
bibliography: references.bib
---

Редактировать: Решение с пакетом here предпочтительнее, так как я хотел бы избежать использования абсолютных путей.

1 Ответ

2 голосов
/ 02 апреля 2020

Можно указать путь к файлу к заголовку YAML с помощью двойной обратной косой черты и без кавычек

bibliography: C:\\Some folder\\references.bib

Чтобы использовать here вместо абсолютного пути, просто укажите код r

bibliography: "`r here::here('Some folder', 'references.bib')`"

Обратите внимание, что вы должны использовать одинарные кавычки (') вместо обычных r двойных кавычек (") в аргументах here

...