LaTeXの分割ソースをYaTeX + reftexで編集する時は master file を指定する

2017年8月20日

大きな文書をLaTeXで編集する際は、ソースを分割すると便利な場合があります。

LaTeXを使う時、私はEmacsでYaTeX modeを使って編集していますが、分割したソースについても通常のtypesetは問題ありません。

最近、ちょっとした問題に遭遇したのは、reftexを使って相互参照を処理しようとした時に、ソース分割すると別ファイルのlabelを参照できないことでした。

問題はreftex mode(minor-mode)に分割ソースをまとめているmaster ファイルを指定する必要があることです。それは次のようなLocal Variablesを分割ソースの末尾に挿入することでできるようです:

%%% Local Variables:
%%% mode: yatex
%%% tex-main-file: "some_master.tex"
%%% End:

上記のtex-main-fileはもともとはEmacsの標準のTeX/LaTeX modeの変数なのですが、reftexはこの変数を参照するようです。

Emacs, LaTeX

Posted by Gordius