【发布时间】:2020-04-25 23:42:11
【问题描述】:
在询问之前,我接受这个问题的许多部分已经在其他堆栈中被触及,并且我已经阅读了 Hadley Wickham inst 和 vignette 部分,但我仍在努力解决我的警告。抱歉,如果这个问题有点啰嗦,我会尽量做到彻底。
我的问题与我的 package_tutorial 有关。
我收到的第一个警告是:
> checking files in ‘vignettes’ ... WARNING
Files in the 'vignettes' directory but no files in 'inst/doc':
‘package_tutorial.Rmd’, ‘package_tutorial.pdf’
在 Hadley Wickham 的文档中,它声明“inst/docs:这是一个较旧的小插图约定,在现代包中应避免使用。”那么为什么 CMD 检查要求将小插图放在 inst/doc 文件夹中?我将在问题结尾处概述小插图和 inst 文件夹中的内容。
我收到的下一个警告如下:
> checking package vignettes in ‘inst/doc’ ... WARNING
dir.exists(dir) is not TRUE
Package vignette without corresponding single PDF/HTML:
‘package_tutorial.Rmd’
我没有 doc 文件夹,因为很明显 inst/doc 文件夹已过时。当我在 inst/doc 文件夹中使用我的小插图进行 CMD 检查时,将删除 doc 文件夹。我知道这可能是重建过程的一部分。
可能有助于解决此问题的其他信息:
文件夹构建(仅适用于 vignette 和 inst 文件夹):
包 - inst - extdata - package_tutorial.pdf
package - inst - extdata - package_tutorial.Rmd
package - inst - extdata - plots - 小插图使用的几个图
包 - 小插图 - package_tutorial.pdf
包 - 小插图 - package_tutorial.Rmd
我已经尝试过不同的选项,即在 extdata 中没有 Rmd 文件,在 vignettes 文件夹中没有 pdf 文件,但这并没有解决问题。
YAML 元数据:
---
title: "package tutorial"
author: "Krutik Patel"
output:
pdf_document:
keep_tex: true
toc: true
toc_depth: 5
fig_width: 5
fig_heigh: 4
fig_caption: true
df_print: kable
highlight: tango
citation_package: natbib
vignette: >
%\VignetteIndexEntry{package tutorial}
%\VignetteEngine{knitr::rmarkdown}
\usepackage[utf8]{inputenc}
构建工具选项: Build and Reload - R CMD INSTALL 附加选项:
--no-multiarch --with-keep.source --resave-data
检查包 - R CMD INSTALL 附加选项:
--as-cran --no-build-vignettes
Build Source Package - R CMD INSTALL 附加选项:
--compact-vignettes="both"
我确实希望这些信息足以帮助我解决我的问题。我希望这是我从未见过的愚蠢的东西。非常感谢任何指导帮助。
【问题讨论】:
-
我遇到了类似的问题,除了在工作中添加一个额外的扳手,我还在
./docs目录(即根目录)中获得了devtools::build_vignettes()输出。这太疯狂了,在经历了如此多的堆栈溢出和 github 线程之后——我只能得出结论,从用户的角度来看,devtools 开发人员真的把这个搞砸了。