web-dev-qa-db-ja.com

Emacsにpdflatexを使用させる

C-c C-f(tex-file)と入力したときに、LaTeXファイルでラテックスではなくpdflatexを実行するようにEmacsを構成するにはどうすればよいですか?

12
John D. Cook

これを行うには、latex-run-commandを設定します。 emacsマニュアル を参照してください。あなたの.emacsでこのような何かがそれをするべきです:

(setqlatex-run-command "pdflatex")

15
EHN

一時的にAucTeXをPDFモードに切り替えることができます CTRLctp。この変更を永続的なセットにするには

(TeX-PDF-mode t)

あなたの~/.emacsファイル。

9

そうではないはずです

(setq TeX-PDF-mode t)

.emacs

私のバージョンのemacs(GNU 24)は、(TeX-PDF-mode t)

(または、これは私が使用しているためかもしれません AucTeX 、これは素晴らしいところでです。)

4
hargriffle

いくつかのアプローチを試した後、私にとって(AucTeXにとっても)うまくいったのは

M-x customize-group ために TeX-command、そして「LatexCommand」をpdflatexに書き直します。

(PDFを開くためにビューアを変更する必要はありませんでした。それは機能しました。)

ここ からのアイデア。)

1
Latanius

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)のいずれかを使用する必要があります。

0
chrm