预处理或后处理的氧气片段

时间:2013-03-21 05:42:15

标签: r roxygen2

是否有某种机制可以转换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,以便它在之前(或者在这种情况下可以工作之后)在doclet上运行它吗?roxygen会生成它的文档吗?

我不想在我的.r文件中进行永久性的查找替换。正如你可能从我的例子中猜到的那样,我的目标是在我的roxygen评论中提供一些基本的降价支持,因此希望保留我的.r文件以保持可读性(并插入\code{..}内容编程)。

我是否应该编写自己的版本roxygenise,在我的文件中检测到所有检测到的roxygen风格的评论preprocess,将它们暂时保存在某处,然后运行实际 roxygenise对那些人?

1 个答案:

答案 0 :(得分:0)

几年后重新审视这个问题,看起来Roxygen有一个函数register.preref.parsers可以用来将自己的解析器注入到roxygen中。 一个这样的用途是有希望的maxygen package(降价+ roxygen = maxygen),这是一个非常巧妙的roxygen评论降价处理的实现(尽管只是对CommonMark规范),你可以看到它是如何用于该包的macument function。我急切地等待“pandoc + roxygen = pandoxygen”......:)