变量名限制为256个字节

时间:2011-04-25 21:03:24

标签: r roxygen

roxygenize在以下代码上失败,并显示以下错误消息。关于该主题的其他帖子表明存在错位的字符。我找不到任何错误!你能发现这个问题吗?

#' My Title. My Description
#'
#' @return A n x n \code{\link{matrix}} where n = the number of variables.  Row and column names are in the same order and are equivalent to the variable names in \samp{timeSeriesData}.  Each entry [i,j] in the matrix is the covariance between variable i and variable j.
#' @callGraphPrimitives
#' @note some notes here
MyFunc = function( timeseriesData ,  method , decayFactor  )
{
}


Error in do.call(paste, c(trimmed.lines, sep = "\n")) :
  variable names are limited to 256 bytes
Calls: roxygenize ... parse.ref.list -> append -> parse.ref -> parse.ref.preref
-> do.call
Execution halted

EDIT1
如果我从长@return行中取出几个单词

,上面的代码就可以了

EDIT2
在roxygenize调用之前添加sessionInfo()结果。

R version 2.12.2 (2011-02-25)
Platform: i386-pc-mingw32/i386 (32-bit)

locale:
[1] LC_COLLATE=English_United States.1252
[2] LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252
[4] LC_NUMERIC=C
[5] LC_TIME=English_United States.1252

attached base packages:
[1] stats     graphics  utils     datasets  grDevices methods   base

other attached packages:
[1] roxygen_0.1-2 digest_0.4.2

2 个答案:

答案 0 :(得分:6)

这是一个众所周知的错误:请参阅this discussion涉及Hadley Wickham,他是roxygen的贡献者。

工作回合是使用较短的行:您的#' @return A n x n ...行中包含约270个字符(包括三个句子),因此可以轻松拆分。

答案 1 :(得分:2)

另一种可能的解决方案是升级到R2.13.0,现在你的字符长度最大值为10.000而不是256