有没有什么机制可以让我转换roxygen看到的注释,最好是在roxygen->rd转换之前?
例如,假设我有:
#' My function. Does stuff with numbers.
#'
#' This takes an input `x` and does something with it.
#' @param x a number.
myFunction <- function (x) {
}现在,假设我想在roxygen解析注释之前对其进行一些转换,例如,用\code{}替换反引号中的所有事物实例。即:
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输入roxygen,以便它在roxygen生成文档之前(在本例中可以工作)在doclet上运行它?
我不想在我的.r文件中进行永久的查找-替换。正如您可能从我的示例中猜到的那样,我的目标是在我的\code{..}注释中提供一些基本的markdown支持,因此希望保持我的roxygen文件的可读性(并以编程方式插入roxygen内容)。
我是否应该编写自己的roxygenise版本,在我的文件中检测到的所有roxygen风格的注释上运行preprocess,将它们临时保存在某个地方,然后在这些注释上运行实际的roxygenise?
发布于 2015-09-23 08:16:26
几年后再来看看这个,看起来roxygen有一个函数register.preref.parsers,你可以用它把自己的解析器注入Roxygen。其中一个这样的用法是很有前途的maxygen package (markdown + roxygen = maxygen),它非常巧妙地实现了roxygen注释的markdown处理(尽管只符合CommonMark规范),您可以看到它是如何在该包的macument function中使用的。我热切地期待着"pandoc + roxygen = pandoxygen"...:)
https://stackoverflow.com/questions/15540321
复制相似问题