【发布时间】:2021-01-01 01:22:53
【问题描述】:
在我的计算机上运行 devtools::check() 我可以使用 .bib 文件的绝对路径强制构建我的包而不会出错。但是由于我在包小插图中包含了我的所有引用并试图指向包含所有 bibtex 引用的 .bib 文件,所以我还没有使用 GitHub Actions 构建包(绝对路径没有意义)。我正在寻求有关如何指向小插图 YAML 标头中的 .bib 文件的建议。
inst/ 目录中 .bib 文件的位置允许我使用 .Rd 文档中的引用来获取包(如此处建议:https://geobosh.github.io/Rdpack/#org88fb0a7),所以我最感兴趣的解决方案可以让我引用该位置中的文件,而不是将其保存在备用目录中。
我的 YAML 标头内容如下:
---
title: "Using_my_package"
output: rmarkdown::html_vignette
bibliography: "where/I/keep/my/package/inst/REFERENCES.bib"
latex_engine: xelatex
vignette: >
%\VignetteIndexEntry{Using_my_package}
%\VignetteEngine{knitr::rmarkdown}
%\VignetteEncoding{UTF-8}
%\SweaveUTF8
---
我也试过
bibliography: `'r system.file("inst", "REFERENCES.bib", package="mypackage")`'`
如何在 YAML 标头中使用相对路径,以便从任何位置构建小插图?
【问题讨论】:
-
为什么不将 bibfile 存储在 vignettes 文件夹中?这适用于我的包,您可以在 YAML 标头中使用
bibliography: REFERENCES.bib。 -
谢谢@J_F!这是否会导致在您的函数的 roxygen cmets 中包含引用时出现任何问题?我按照
Rdpack包的说明进行操作,该说明将它们保存在inst/文件夹中。 geobosh.github.io/Rdpack/#org88fb0a7