在 emacs 和 Sweave 中使用“主文件”

在 emacs 和 Sweave 中使用“主文件”

我喜欢 emacs 的一点是它能够指定一个主文件,然后编译一个包含.tex文件 - 我只需要使用C-c C-b

对于 sweave 文档,我有以下布局:

  • master.Rnw

    • \SweaveInput{chapter1}

    • \SweaveInput{chapter2}

    • \SweaveInput{chapter3}

我想使用与C-c C-b仅 sweave/latex相同的想法chapter1。这在 emacs 中可行吗?

答案1

我不是 Sweave 的专家,但它似乎集成在储能系统带有 Rnw 和 Snw 模式的软件包,您可以让其直接在缓冲区代码上运行 Sweave 或 R。因此,如果您只是预览 sweave 文件结果,那么这可能就是您想要的。

我还发现了有关 ESS 与 AUCTeX 更紧密集成的详细信息这里。它没有经过测试,但是 Cc Cc 被映射到在主文件上运行命令,因此它可能对您有用。

虽然这不是一个完整的答案,但我希望它能有所帮助。我将其置于 WIKI 模式,以便您在发现更多内容时可以添加更多详细信息。

答案2

我怀疑这种事情是否可行,因为只在第一章上运行 tex 是行不通的,因为它需要公共前言,而这大概在主文档中。如果你在主文档上运行 tex,那么它不知道只执行第一章。

执行所需操作的一种方法是使用\includeonly来告诉编译器要包含哪些文件。 (我希望\SweaveInput有一个类似的命令...)请参阅此处了解详细信息

如果问题是您希望 emacs 将.Rnw文件视为.tex文件,请尝试将其添加到您的 .emacs:

(add-to-list 'auto-mode-alist '("\\.Rnw~?$" . latex-mode))

相关内容