针对参数的knitr内联评论

时间:2014-04-27 21:16:09

标签: r format comments knitr

编织此代码段时:

<<test>>=
f <- function( 
    x, #arg description
    y) x*y
f(3, 4) 
@ 

我收到错误:

label: test
Warning in block_exec(params) :
  failed to tidy R code in chunk <test>
reason: Error in base::parse(text = code, srcfile = NULL) : 
  2:5: unexpected SPECIAL
1: f <- function (
2: x , %InLiNe_IdEnTiFiEr%
       ^

问题与tidy.source()相关联,{{1}}无法格式化给定的块。

评论函数参数是一种非常常见且通常建议的做法。我认为这种行为可能不是设计,因为在过去可以使用这些类型的评论。

2 个答案:

答案 0 :(得分:3)

请注意,您会收到警告 - 而不是错误。它仍然应该生成一个它刚刚赢得的文件。它不知道如何整理,我不认为这是格式化代码的好方法,所以我没有能够整理代码。

如果您想消除警告,可以执行此操作

<<test, tidy=FALSE>>=
f <- function( 
    x, #arg description
    y) x*y
f(3, 4) 
@ 

您的代码无法为您整理,但您不会收到警告。

答案 1 :(得分:2)

评论不能保留在不完整的表达中。

https://github.com/yihui/formatR/wiki第6节。

包裹作者已将此作为(已结束)问题#15注明。 (使用roxygen2或类似内容是记录函数的“更好”选择。)