我正在编写一个包,它在服务器上完成一些工作。我有一个更新表的脚本,但我的意图不是手动和不频繁地运行它。它不是一个需要进入名称空间或任何东西的函数,只是一个脚本。
问题是,当我调用roxygen2::roxygenize()时,它会运行这个脚本并需要一段时间才能运行,这在我试图开发交互式函数时非常烦人。我知道我可以在文档中的示例中添加\donotrun{},但在这种情况下这是没有意义的。我能告诉roxygen不要去执行这个吗?
我考虑过让这个函数成为一个函数,这样执行它就可以定义函数体,但这看起来有点偏斜。
任何建议都会很好
发布于 2020-05-12 22:02:17
对于新访问者,这不是roxygen文档中函数的代码;为此,最好用\donotrun包围它,如
#' @examples
#' \donotrun{
#' something_goes_here()
#' }
myfunction <- function(...) {不过,在这种情况下,包本身包含了一些文件。
./inst/目录中的文件与包一起安装,但它们不被假定为R脚本(或其他任何东西)。这方面的权威参考从“编写R扩展”( 第1.1.5节包子目录 )开始。这将在通过install.packages(...)安装软件包的每台计算机上安装文件。.Rbuildignore的包根目录中放置一个文件(ref:同一链接,现在是1.3.2构建包tarball部分)。这些模式匹配的文件将不包含在包tarball中。是否将实际文件放入./inst/或其他任何地方完全取决于您:如果它在.Rbuildignore文件中,那么它将被排除在tarball之外(因此最终用户可以看到/找到)。https://stackoverflow.com/questions/61761325
复制相似问题