我一直在做一个包。起初,我会定期构建小插图,并且 vignette() 函数将能够找到它们。但是后来有些东西坏了,我不知道它是什么,即使使用默认代码,vignette() 也不起作用。
我创建了一个全新的包'tabtest',它会自动创建一个函数'hello',我这样做:
usethis::use_vignette("my-vignette")
创建小插图文件,我没有更改任何内容并保存。
然后,我使用 Ctrl-Shift-B 构建,然后执行
library(tabtest)
vignette(hello)
并得到错误'主题 [1L] 中的错误:'closure' 类型的对象不是子集',这与我在实际包中遇到的错误相同。
值得注意的是,如果我这样做
devtools::build_vignettes()
它运行没有问题,并在 doc/ 文件夹中创建准确的小插图文件,但小插图()找不到它们。另外,如果我将代码上传到 github 并使用 install_github,那么它也找不到小插图。
我一定在某个地方按下了一些奇怪的开关。我究竟做错了什么?谢谢!