我正在用 AUCTeX 写一篇论文。我有一个主文档 (master.tex) 和几个章节文件 (chapter1.tex、chapter2.tex 等),这些文件使用命令包含在主文件中\include
。
主文件现在无法编译,AUCTeX 返回“主文件已设置”。
可以通过从 master.tex 中删除尾部(来自%%% Local Variables:
和下面)并重新编译(C-c C-c
返回主文件的提示)来解决该问题。然而,这似乎使 AUCTeX 无法理解文档结构,从而无法_region_.pdf
从编译chapter.tex
。
梅威瑟:
% This is master.tex
\documentclass{report}
\begin{document}
\include{chapter1}
\end{document}
%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:
...
%This is chapter1.tex
Arbitrary text.
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "master"
%%% End:
AUCTeX 版本 2019-09-27,Emacs 26.3。
这个问题之前有人问过,但是帖子因为与主题无关而被关闭,没有提供任何可行的解决方案。我希望有人能帮助我。
答案1
在 中chapter1.tex
,您要设置TeX-master
为符号'master
。它应该是一个字符串:
%This is chapter1.tex
Arbitrary text.
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "master"
%%% End:
(请确保您已M-x revert-buffer
应用更改。)
答案2
看看其中是否有任何流浪字符。
使用 emacs(加载了 AUCTeX)从头创建示例中的文件。看看您是否得到相同的行为。如果没有,请复制并粘贴...
我有几个很大的文档(大约 30 个文件,分散在各个目录中)。在 Fedora 上与最新的 xemacs 和 AUCTeX 配合良好(最老的版本自 10 年前诞生以来已经经历了多个版本)。从未遇到过您的问题。