【问题标题】:R package vignettesR包小插曲
【发布时间】:2019-03-21 06:06:56
【问题描述】:

我有点困惑,为什么 R 包中有多个可能的“小插曲”位置。我不明白哪些位置用于什么以及何时。例如:

devtools::use_vignettes()

在包的根目录下创建一个 vignettes 文件夹

devtools::build_vignettes() 

创建一个 inst/doc 文件夹,在构建时提升到根目录

pkgdown::build_site()

创建一个 docs 文件夹。

作为背景:我已经阅读了 H.Wickhams R 包的书,并且我使用第一个选项创建了几个包,所有的东西都表现得很好。我会让用户从 github 安装:

devtools::install_github(pkg,build_vignettes=TRUE)

现在,我刚刚开始参与联合开发一个包,其中使用了第一个和第三个选项。我注意到vignettes 文件夹中的.rmd 文件与docs 文件夹中的index.html 文件相同。 pkgdown 是否从 vignettes 文件夹中复制?

对于这个包,当我从 github 安装时(使用 build_vignettes=TRUE),我收到一条错误消息,提示安装失败,因为找不到 doc/index.html 路径。现在为什么会发生这种情况?

【问题讨论】:

标签: r package tidyverse vignette


【解决方案1】:

小插曲开发

只有一个地方可以放置原始的小插图,它位于根目录的小插图目录中。这是您在开发包时使用文本和代码示例编写 Rmd 文件的地方。

为您的用户构建小插曲

当你构建你的小插图时,Rmd 文件将被编织。生成的 html 文件、原始 Rmd 文件和 R 代码的提取将是保存在 inst/doc 目录中的三个文件。这将保留在软件包安装中。这是用户将能够阅读的内容。

{pkgdown}

{pkgdown} 正在使用 vignette 目录的 Rmd 文件来编织 html 文件,以便它可以为您的包构建网站。它还为函数列表和自述文件中的索引构建了一个页面,该文件也用于您的 git 存储库。这不应该保留在 R 包中,并且用户无法访问。这是为了在互联网上展示您的包裹。

结论

因此,当您进行开发时,您只需在 vignette 目录中编写您的 Rmd vignette。其他人会自动保留他们需要的东西。

【讨论】:

  • 明确一点:小插图目录应该命名为“vignettes”(复数形式)。
猜你喜欢
  • 1970-01-01
  • 2017-08-28
  • 2021-06-01
  • 1970-01-01
  • 2014-05-04
  • 1970-01-01
  • 1970-01-01
  • 2020-07-21
相关资源
最近更新 更多