I have a simple shell script that builds my Roxygen documents, builds the package, checks, then installs the newly built package on my machine. It’s quite simple:
#! /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
But I’m having issues with Roxygen picking up my .onLoad() function as described previously on StackOverflow. The solution is to use the use.Rd2=TRUE option with roxygenize. Well I want to build from the command prompt so I changed this line
R CMD roxygen -d myPackage
to the following line which shoves a roxygenize line to R through the stdin:
echo 'require("roxygen"); roxygenize("myPackage", roxygen.dir="myPackage",
copy.package=FALSE, use.Rd2=TRUE)' | R --no-save < /dev/stdin
This seems to work just dandy. But it feels a little convoluted. Is there an easier and/or more elegant way?
I do something similar, but I use a HERE document in the shell script to make it look cleaner.
The R code is very similar to that in the script run during
R CMD roxygen.The roxygen that is installed on my system (version 0.1; installed from CRAN this week) doesn’t seem to support the
-soption mentioned above…