mail とかの話ばっかりじゃなくて、たまにはマジメな話もしないとね。 というわけで、高機能な LaTeX 編集 mode、AUC-TeX の説明です。
私は pTeX user なので、それに特化してしまっているかもしれませんが、 だいたいはここに書いてあるとおりで動くと思います。
AUC-TeX は以下のところから最新版が入手できます。
make install したのち、 make install-contrib もしておきましょう。
(load "tex-site") (setq auto-mode-alist (append '(("\\.tex$" . japanese-latex-mode) ("\\.ltx$" . japanese-latex-mode)) auto-mode-alist))
AUC-TeX は、TeX source の編集中に \C-c\C-c を叩くことによって LaTeX 等の command による compile が行えます。
この際、LaTeX に渡される file名 は編集中の file になるのが普通ですが、 file を分割していて おおもとの file (main.tex など) を compile 対象としたい場合は、それを変数 TeX-master に 設定しておけば O.K. です。
(setq-default TeX-master "main")
また、どの LaTeX command を呼出すかは、 変数 TeX-command-default で制御できます。 詳しくは 変数 TeX-command-list を参照してください。
(add-hook 'TeX-mode-hook (function (lambda () (setq TeX-command-default "pTeX"))))
\C-c\C-c で compile した後、もう一度 \C-c\C-c を叩くと、今度は viewer を起動させることができます。UNIX では ふつう xdvi が起動するでしょう。
ここで、xdvi に引数を指定したい場合があります。 たとえば master file が ohp.tex という名前の場合は landscape で起動したいとしましょう。 その場合は以下のように変数 TeX-view-style を設定することで 望みの動作を得ることができます。
(setq TeX-view-style '(("^ohp$" "xdvi %d -paper a4r") ("." "xdvi %d")))
bib-cite.el は AUC-TeX の package に含まれる contrib で、 編集中の文書内の \cite{} から、 それに対応する bibitem (たとえば @Article{} など) の 記述を呼び出して編集できるようにする tool です。
これを使用するには、以下のように設定します。
(autoload 'turn-on-bib-cite "bib-cite") (add-hook 'LaTeX-mode-hook 'turn-on-bib-cite)
bibitem 記述はもちろん 他の file 内に存在していても構いません。 ただし、\bibliography{} の対象となる file の search path を Bib-Cite に教えてやる必要があります。
default では Bib-Cite は、環境変数 BIBINPUT を使いますが、 pTeX を使っている場合は BIBINPUT は設定せず ${HOMETEXMF}/bibtex/bib/ などに bib file を置くのが普通です。Bib-Cite では、BIBINPUT の 代わりに用いたい環境変数名を、変数 bib-bibtex-env-variable に設定することで そちらを使わせることができます。
(setq bib-bibtex-env-variable "BIBCITEDIR")
あとは shell の RunCom file で、以下のような感じで 設定しておけばいいでしょう。(zsh の場合)
export BIBCITEDIR=".:${HOMETEXMF}/bibtex/bib:${HOMETEXMF}/jbibtex/bib"
RunCon file に書くのがイヤなら、~/.emacs 内で setenv<f> するのもいいかもしれません。
AUC-TeX と共に outline-minor-mode を 使う場合は、以下のように設定します。
(add-hook 'LaTeX-mode-hook (function (lambda () (outline-minor-mode t))))
あと、outline-regexp の設定の仕方が、 他の mode とは異なります。例えば \section{} などは 既に登録されているため変更する必要はなく、自分で heading を追加したい 場合は、TeX-outline-extra という変数に その heading と heading level の set の list を設定します。
たとえば seminar.sty で用いる \begin{slide} を heading として追加したい場合は以下のようにします。
(setq TeX-outline-extra '(("^\\\\begin{slide}" 0))) ; for seminar.sty