gpt4 book ai didi

r - 为什么 @family 标签在 roxygen2 中的单词之间添加点?

转载 作者:行者123 更新时间:2023-12-05 04:15:53 25 4
gpt4 key购买 nike

我正在编写一个 R 包并使用 roxygen2 创建文档。我使用 RStudio 中的 Build & Reload 按钮构建包和文档。根据 RStudio 的输出,它使用 devtools::document(roclets=c('rd', 'namespace')) 来编译文档。

我想使用 @family 标签将文档中的许多函数链接在一起,这就是我的问题所在。这条线

#' @family functions returning some object

在.Rd文件中转换为如下

\seealso{
Other functions.returning.some.object: \code{\link{test2}}
}

我不想要单词之间的点。我有一个较旧的包,但不会发生这种情况,即使我在与编译新包完全相同的设置中重新编译文档也是如此。我看不出这个旧包和我的新尝试之间没有根本区别。

我写了一个很简单的测试包,这里也出现了这个问题。它包含一个 R 文件 (testpackage.R):

#' Test function 1
#'
#' @param x a number
#'
#' @family functions returning some object
#' @family aggregate functions
#'
#' @export

test1 <- function(x) {
x*x
}


#' Test function 2
#'
#' @param x a number
#'
#' @family functions returning some object
#' @family aggregate functions
#'
#' @export

test2 <- function(x) {
x*x*x
}

描述文件是

Package: testpackage
Type: Package
Title: Package for testing purposes
Version: 1.0
Date: 2015-05-21
Author: Me
Maintainer: Me <me@somewhere.com>
Description: Package for testing purposes
License: GPL-3

NAMESPACE 由 roxygen 生成。对于文档 test1.Rd,我得到:

% Generated by roxygen2 (4.1.1): do not edit by hand
% Please edit documentation in R/testpackage.R
\name{test1}
\alias{test1}
\title{Test function 1}
\usage{
test1(x)
}
\arguments{
\item{x}{a number}
}
\description{
Test function 1
}
\seealso{
Other aggregate.functions: \code{\link{test2}}

Other functions.returning.some.object: \code{\link{test2}}
}

\seealso 部分添加不需要的点。显然,@family 标记中的单词数似乎无关紧要。我试过用引号、各种括号等将文本括起来,但没有任何积极效果。当然,我可以编辑 Rd 文件,但这会忽略使用 roxygen2 的意义。

R CMD checktestpackage 上运行时没有警告或错误。

为什么会出现这些点?我怎样才能摆脱它们?

最佳答案

这是 roxygen2 中的错误——我已经记录了一个问题 here .它实际上是由 unstack() 的使用产生的,它执行一些不需要的转换。

关于r - 为什么 @family 标签在 roxygen2 中的单词之间添加点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30367885/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com