该knitr软件包最近添加了新的notangle晕影引擎,例如knitr::rmarkdown_notangle,允许禁用晕影块的评估.这里knitr描述了用于小插曲的一般过程,而具体notangle功能在该问题的答案中描述.
我的问题是我不能让这个工作.我可以通过在目录中R CMD build包含.html输出来传递它vignettes(我也放了一个副本inst/doc),但R CMD check除非我指定--no-build-vignettes,否则我无法通过它,或者除非我将rmarkdown_notangle引擎更改回来rmarkdown.
我已经构建了一个简单的包,其中包含以下插图(in vignettes/notangle.rmd):它可以在这里找到.
<!--
%\VignetteEngine{knitr::rmarkdown_notangle}
%\VignetteIndexEntry{Supplementary Materials}
-->
A silly little vignette.
```{r}
2+2
```
Run Code Online (Sandbox Code Playgroud)
我的DESCRIPTION文件包括
Suggests:
knitr,
VignetteBuilder: knitr
BuildVignettes: yes
Run Code Online (Sandbox Code Playgroud)
当我试着奔跑时,R CMD check我得到了
* checking re-building of vignette outputs ... NOTE
Error in re-building vignettes:
...
Error: processing vignette 'notangle.rmd' failed with diagnostics:
Failed to locate the ‘weave’ output file (by engine ‘knitr::rmarkdown_notangle’)
for vignette with name ‘notangle’. The following files exist in directory ‘.’:
‘notangle.rmd’
Run Code Online (Sandbox Code Playgroud)
使用r-devel(2014-09-17 r66626),也可以使用3.1.1.
解决方法(我非常希望避免)是从R代码块切换到通用代码块(打开三重反引号,而不是三重反引号+"r"),Rmarkdown不处理.
我确定我正在做一些愚蠢的事情.有线索吗?
更新:我可以通过显式添加eval=FALSE每个块的选项来获得我需要的东西(停止评估所有块),但我仍然想知道发生了什么......