我有点困惑,为什么在一个R包中有多个可能的“小插曲”的位置。我不明白什么地方是用来做什么和什么时候用的。例如:
devtools::use_vignettes()在包根目录下创建一个小片段文件夹。
devtools::build_vignettes() 创建一个inst/doc文件夹,该文件夹在构建时被提升为根。
pkgdown::build_site()创建一个docs文件夹。
作为背景:我读过H.Wickhams R软件包的书,我使用第一个选项创建了几个包,所有的东西都表现得很好。我会让用户从github安装,使用:
devtools::install_github(pkg,build_vignettes=TRUE)现在,我刚刚开始共同制定一套方案,其中使用了第一种和第三种选择。我注意到,.rmd文件与docs文件夹中的index.html文件相同。pkgdown是否从vignettes文件夹中复制?
对于这个包,当我从github安装时(使用build_vignettes=TRUE),我会遇到一个错误,即安装失败,因为找不到doc/index.html路径。现在为什么会发生这种事?
发布于 2019-03-20 21:29:07
小插曲发展
只有一个地方可以放置原始的小插曲,那就是根目录中的vignette。这是您在开发包时用文本和代码示例编写Rmd文件的地方。
为您的用户构建小片段
当您构建您的小插曲时,Rmd文件将被编织。生成的html文件、原始的Rmd文件和提取的R代码将是保存在inst/doc目录中的三个文件。这就是包安装中要保存的内容。这是用户能够阅读的内容。
{pkgdown}
{pkgdown}是使用您的Rmd文件的vignette目录编织html文件,以便它可以为您的包建立一个网站。它还为函数列表构建了一个页面,并从自述文件中构建了一个索引,该索引也用于git存储库。这是不应该停留在R包,并无法访问的用户。这是为了在互联网上展示你的包裹。
结论
因此,当您开发时,您只需将您的Rmd vignette写在vignette目录中。其他人会自动保留他们所需要的。
https://stackoverflow.com/questions/55268999
复制相似问题