我使用 AUCTeX 在 Emacs 中编辑我的 LaTeX 文件。要编译,我按 C-c C-c,这将运行 pdflatex root
,如果 root.tex
是当前缓冲区中显示的文件。
但是如果我想让它在当前缓冲区中没有显示的文件上运行 pdflatex
怎么办?
例如,我正在编辑包含的 .tex
文件 chapter2.tex
,然后按 C-c C-c。我希望它运行的命令仍然是 pdflatex root
,因为 chapter2.tex
只是包含在 root.tex
中。
我该怎么做?
最佳答案
当您创建一个新文件时,AUCTeX 会询问您关于它的“主”文档。如果您定义了主文件,C-c C-c 将编译主文件而不是当前打开的文件。
AUCTeX 通过添加包含所需信息的页脚来跟踪这一点。假设您有一个主文档 index.tex
,页脚将如下所示:
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "index"
%%% End:
关于Emacs/AUCTeX : run command on file that is not currently open,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2199463/