预处理或后处理roxygen片段
有没有一些机制可以用来转换roxygen所看到的意见,最好是在roxygen-> rd转换之前呢?
例如,假设我有:
#' My function. Does stuff with numbers. #' #' This takes an input `x` and does something with it. #' @param xa number. myFunction <- function (x) { }
现在,假设我想在roxygenparsing它之前做一些转换,例如用\code{}
replace反引号中的所有事例。 即:
preprocess <- function (txt) { gsub('`([^ ]+)`', '\\\\code{\\1}', txt) } # cat(preprocess('Takes an input `x` and does something with it'.)) # Takes an input \code{x} and does something with it.
我可以将preprocess
joinroxygen中,以便它能够在之前(或者在这种情况下工作之后)在doclet上运行它。roxygen是否生成文档?
我不想在我的.r
文件中进行永久的查找replace。 正如你从我的例子中可以猜到的,我的目标是在我的roxygen注释中对一些基本的markdown支持,因此希望保持我的.r文件保持可读性(并且以编程方式插入\code{..}
东西) 。
我应该只是写我自己的roxygenise
版本,在我的文件中检测到的所有roxygen样式的注释运行preprocess
,将它们暂时保存在某处,然后运行实际的 roxygenise
?
在几年之后重新审视这个,看起来Roxygen有一个函数register.preref.parsers
,可以使用它将自己的parsing器注入到roxygen中。 一个这样的使用是有前途的maxygen包 (markdown + roxygen = maxygen),这是一个非常简洁的roxygen注释降级处理(尽pipe只是CommonMark规范)的实现,您可以看到它是如何用于该包的信息function 。 我急切地等待“pandoc + roxygen = pandoxygen”… 🙂