我正在不同的 repo 路径中的 2 台不同的计算机上开发一个包。当我调用devtools::document()
andpkgdown::build_site()
时,我注意到整个小插图都被重新渲染了。问题在于,根据机器的不同,重新渲染会导致错误,因为函数调用的 2 台机器中的路径不同。有没有办法让小插图“静态”,这样它们就不会重新渲染,这样当我拉上另一台机器并开始处理包时,它将继承小插图而不是重建它?
问问题
40 次
1 回答
1
是的——我用几个包来做,可能有很多原因(你描述的地方差异,想要节省时间,确保相同的结果,......)
本质上它包括两个步骤,我在这里描述一个 pdf 小插图,因为这就是我关心的情况。
首先,您在本地“照常”渲染您的小插图并将其存储在包中。的子目录vignettes/
会做得很好。该文件现在是静态的,不会更改,因为 R 只能在顶级目录级别工作vignettes/
。
其次,您添加了几行的老式 Sweave 小插图,其中包括您的预制 pdf 小插图作为输入。Mark在这篇博文中首先描述了这一点。还要确保您的DESCRIPTION
文件设置为标准 Sweave 小插图。使用此设置,您不再需要声明knitr
或RMarkdown
因为您的标准R CMD ...
流程不再涉及它们。
您可以查看我的任何时间包及其vignettes/
目录作为工作示例。
于 2020-12-16T15:00:41.303 回答