Process all sections instead of only the first (#25, #36).
Fix \href{}{}
macro and add \dots
and \ldots
to single-argument macros (#22, #36).
parse_file()
error that can occur when \keywords{}
is empty in .Rd
(thanks, @byandell, #29).@examplesIf
.@examplesIf
.\link[pkg:name]{name}
to \link[pkg:topic]{name}
, due to the recent requirement of CRAN that links should point to the topic instead of nameroxygen_and_build()
now calls roxygen2::roxygenize()
in a new R session.rab()
no longer reformats code in the usage sections of Rd files.rab()
rab(install = TRUE)
can automatically generate an Rd file for objects that are imported from other packages and later re-exported in the current package; this is done through the internal function importRd()
when build = FALSE
and install = TRUE
in rab()
, the package directory instead of the built tar ball is installed
added an argument install.opts
to rab()
to specify options for R CMD INSTALL
(default: --with-keep.source
if build = FALSE
, otherwise empty)
added an argument before
to rab()
so we can evaluate an R expression before the package is roxygenized and built
if the Examples section starts with a special token # !formatR
, the example code will not be reformatted
spaces will be added after commas in \item{}
, e.g. \item{x,y,z}{}
will be converted to \item{x, y, z}{}
added NULL to create_roxygen() when docType is data or package (#9)
Rd2roxygen() tries to add the @export tags according to the exported names in the NAMESPACE (#10, #11 and #12)
when reformatting usage and example sections, rab() tries to make code width smaller than 90, as required by R CMD check
\item{}
in the \value{}
section will be formatted as the @returnItem tag, which is a new tag in roxygen2 (> 2.2.2) (#8) (thanks, Andreas Alfons)
R code in \dontrun{}
, \dontshow{}
and \donttest{}
can be reformatted by formatR now
the vignette is built with knitr via the Makefile; in previous versions, it was a fake Rnw document (essentially a weaved tex file)
dependency on roxygen2 and formatR was changed to Imports
default value for ‘check.opts’ in rab() is ‘–as-cran’ now
\section{title}{content}
will be converted to ##' @section title: content
(thanks, Brian G. Peterson)\dontrun{}
can be correctly reformatted now; there was a bug in the previous version when options(replace.assign = TRUE)\method{generic}{class}(param = value)
can be correctly reformatted now; in previous versions rab() will ignore such usage sectionsRd files that have \docType{data}
or \docType{package}
(for datasets and package documentation) are written into xxx-package.R directly; these names are not looked up in R scripts under the R directory of the source package
Rd comments (following %) will be ignored when generating roxygen comments for arguments
a complete example of running Rd2roxygen() on a real package was added to ?Rd2roxygen
re-run Rd2roxygen() on a package will remove the roxygen comments in R scripts before adding new roxygen comments parsed from Rd files; in old versions of this package, the old roxygen comments were not removed, hence the comments were added incrementally above the function objects, which was certainly not desirable
foo
<-, ‘foo’ <-, “foo” <-, and = can be used as the assigning operator as well\%
becomes %
) before the code is reformatted, then escaped again; this can avoid errors when reformatting the code, since \%
is an illegal character in Rthe escape and use.Rd2 arguments are removed in rab() since roxygen2 can handle these cases elegantly
roxygen.dir is the same as the package directory by default, so rab() will write all the documentations in the original package directory
the usage section is no longer reformatted by formatR; roxygen2 formats it nicely
the function rm_undocumented() is no longer needed, so it was removed from this package; use @noRd if you do not want the documentation of a certain object to be generated by roxygen2