为什么有些R代码必须包含在Bookdown的index.Rmd中?

时间:2018-05-31 23:38:42

标签: r markdown r-markdown

我在Bookdown Chinese demo下载了bookdown-chinese并删除了.Rmd以外的所有index.Rmd个文件。当我构建这本书时,为什么有些R代码必须包含在index.Rmd,。

```{r}
 sessionInfo()
```

否则会提示一些错误

! Undefined control sequence.
l.105 \RecustomVerbatimEnvironment
                              {Highlighting}{Verbatim}{commandchars=\\\{...

Error: Failed to compile bookdown.tex. See bookdown.log for more info.
Please delete bookdown.Rmd after you finish debugging the error.
Execution halted

Exited with status 1.

事实上我编辑了一本没有R代码的书,发现我必须保留这些R代码或更改index.Rmd中的任何其他R代码才能构建本书。

1 个答案:

答案 0 :(得分:6)

导致此错误的LaTeX命令来自from preamble.tex,并在LaTeX包fancyvrb中定义。在template.tex中,我们发现只有条件地包含fancyvrb。实际上,在生成此错误时出现的bookdown.tex中,未加载fancyvrb

如果您确定将来不需要R块,则只需从preamble.tex中删除违规行即可。如果将来可能使用R块,请查看this PR