Emacs/AUCTeX:在当前未打开的文件上运行命令

Fra*_*ank 18 lisp emacs latex auctex

我使用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.

我怎样才能做到这一点?

Ben*_*ier 19

当您创建新文件时,AUCTeX会向您询问有关"主"文档的信息.如果定义主服务器,C-c C-c则将编译主服务器而不是当前打开的文件.

AUCTeX通过添加页脚及其所需信息来跟踪这一情况.假设您有一个主文档index.tex,页脚将如下所示:

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: "index"
%%% End: 
Run Code Online (Sandbox Code Playgroud)

  • 局部变量路由的缺点是要求你杀死缓冲区并在设置变量之前重新打开它(可能有一种更聪明的方法吗?).第一次打开文件时,您也可以执行`Mx TeX-master-file-ask`. (2认同)

小智 7

抄送_自动创建这个页脚