我有一个简单的 shell 脚本,用于构建我的 Roxygen 文档、构建包、检查,然后在我的机器上安装新构建的包。这很简单:
#! /bin/sh
R CMD roxygen -d myPackage
R CMD build myPackage/
R CMD check myPackage_0.01.tar.gz
R CMD INSTALL myPackage myPackage_0.01.tar.gz
但是我遇到了 Roxygen 拾取我的 .onLoad() 函数的问题,如前所述 StackOverflow。解决方案是将 use.Rd2=TRUE 选项与 roxygenize 一起使用。好吧,我想从命令提示符构建,所以我更改了这一行
R CMD roxygen -d myPackage
到以下行,该行通过标准输入将 roxygenize 行推到 R :
echo 'require("roxygen"); roxygenize("myPackage", roxygen.dir="myPackage",
copy.package=FALSE, use.Rd2=TRUE)' | R --no-save < /dev/stdin
这似乎只是花花公子。但是感觉有点绕。有没有更简单和/或更优雅的方式?