C-c C-f(tex-file)と入力したときに、LaTeXファイルでラテックスではなくpdflatexを実行するようにEmacsを構成するにはどうすればよいですか?
これを行うには、latex-run-commandを設定します。 emacsマニュアル を参照してください。あなたの.emacsでこのような何かがそれをするべきです:
(setqlatex-run-command "pdflatex")
一時的にAucTeXをPDFモードに切り替えることができます CTRLctp。この変更を永続的なセットにするには
(TeX-PDF-mode t)
あなたの~/.emacs
ファイル。
そうではないはずです
(setq TeX-PDF-mode t)
.emacs
?
私のバージョンのemacs(GNU 24)は、(TeX-PDF-mode t)
。
(または、これは私が使用しているためかもしれません AucTeX 、これは素晴らしいところでです。)
いくつかのアプローチを試した後、私にとって(AucTeXにとっても)うまくいったのは
M-x customize-group
ために TeX-command
、そして「LatexCommand」をpdflatexに書き直します。
(PDFを開くためにビューアを変更する必要はありませんでした。それは機能しました。)
( ここ からのアイデア。)
Auctexでpdflatexを使おうとしましたが、(TeX-PDF-mode t)
の(setq TeX-PDF-mode t)
または~/.emacs
が機能しなかったので、次のことがわかりました。
同じ名前の変数と関数があります:TeX-PDF-mode
。変数を(setq TeX-PDF-mode t)
で直接設定するか、関数(TeX-PDF-mode t)
を使用することができます。ただし、変数はローカルバッファだけでなく、 自動的にローカルバッファ です。
バッファローカルとは、変数にデフォルト値があり、すべてのバッファがローカルバインディングを持つことができることを意味します。ローカルバインディングなしでバッファ内の変数を変更すると、デフォルト値が変更されます。ローカルバインディングを持つバッファ内の変数への変更は、ローカルバインディングにのみ影響します。
自動的にローカルにバッファリングするということは、変数へのすべての変更が自動的にローカルにバッファリングされることを意味します(ローカルバインディングがまだ作成されていない場合)。 setq
でデフォルト値を変更する方法はありません。setq-default
を使用する必要があります。
したがって、(setq TeX-PDF-mode t)
で(TeX-PDF-mode t)
または~/.emacs
を使用しても、まだ作成されていないバッファには影響しません。 (setq-default TeX-PDF-mode t)
、または提供されている関数(TeX-global-PDF-mode t)
のいずれかを使用する必要があります。