27

有人可以提供一个如何正确使用模板标签的例子Roxygen2。我试图做最明显的事情(对我来说):

在我的packageName-package.R文件中:

 #' [... other Roxygen blocks ...]
 #' 
 #' @templateVar testTemplateTag Testing one two
 NULL

然后在一个文件中 someFunction.R

 #' [... other Roxygen blocks ...]
 #'
 #' @template testTemplateTag

我得到错误:

 Error : Can not find template testTemplateTag

我试图有一个地方来记录常见的重复定义示例等。当这些东西嵌套在我一直在使用的一组函数中时@inheritParms。但是有些东西,如定义和其他描述,在几个地方使用。我已经搜索了高和低的使用@templateand@templateVar并没有找到任何东西。

谢谢。

4

1 回答 1

41

完美的!谢谢@hadley。plyr 的 GitHub 版本就是一个完美的例子。

我将在这里为未来的溢出者描述这个过程。

在 Roxygen2 中使用模板

1)您应该创建一个文件夹来保存您的模板:man-roxygen/

2)每个模板都是一个.R文件man-roxygen/

例如:man-roxygen/someTemplate.R

 #' ... [other roxygen2 tags and information] ...
 #'
 #' @param someParm A parameter that is used in several functions.
 #'
 #' ... [more roxygen2 tags and information] ...

3)现在在其他一些块中,您可以通过这种方式roxygen2调用所有roxygen2代码。

 #' ... [other roxygen2 tags and information] ...
 #'
 #' @template someTemplate

4)当您使用模板时,您会得到someTemplate.R文件中的所有内容。

查看GitHub 上的 plyr 包,了解 Hadley 使用存储在其中的多个模板文件的巧妙方式man-roxygen\,他可以混合搭配来创建文档。查看以下内容以了解此想法:

@template在这些文件中查找使用:

 R/aaply.r
 R/adply.r

看看这里的模板:

 man-roxygen/ply.r
 man-roxygen/a-.r
 man-roxygen/-a.r
 man-roxygen/-d.r
于 2013-02-28T18:59:52.760 回答