11

我有使用 LaTeX Beamer 模板的文档,并在实际文档的开头传递此代码

\usepackage{Sweave}
\begin{document}
\SweaveOpts{concordance=TRUE}

该文档使用带有 R-2.15.2 的 RStudio (0.97.248) 编译得很好。完成合成后,为了确保可重复性,我喜欢从 cmd 文件生成整个分析(并使用 ghostscript 压缩 PDF)。相关部分是

R CMD Sweave MyDoc
pdflatex MyDoc
bibtex MyDoc
pdflatex MyDoc
pdflatex MyDoc

这失败并显示错误消息

 ! LaTeX Error: File `MyDoc-concordance.tex' not found.

这表明 Sweave 没有从命令行生成索引。找不到命令行开关,我的谷歌搜索没有帮助......我将不胜感激任何指针......

4

1 回答 1

4

通常,在命令行上解析最初在 RStudio 中创建的 .Rnw 文件时,您会遇到此问题。RStudio Sweave 模板\SweaveOpts{concordance=TRUE}在 .Rnw 文件中具有默认选项。

这似乎是 Sweave 没有引起太多关注的问题。有时我在命令行上工作时会遇到这种情况,我发现的唯一解决方法是设置:

\SweaveOpts{concordance=FALSE} 

在文件本身中,删除所有临时乳胶,然后R CMD Sweave再次运行以创建一个新的 .tex 文件。生成的文件将与pdflatex或一起使用xelatex

显然,无法将索引文件的请求传递给 Sweave(我尝试过R CMD Sweave MyDoc.Rnw --options=concordance=TRUE,正如我在评论中提到的那样)。

于 2014-04-01T20:10:57.107 回答