Как заставить Emacs использовать pdflatex

12

Как я могу настроить Emacs для запуска pdflatex, а не latex для файла LaTeX, когда я набираю Cc Cf (tex-file)?

Джон Д. Кук
источник
Вероятно, в следующий раз вы захотите опубликовать такой вопрос на TeX.SE :)
Dror

Ответы:

15

Вы можете сделать это, установив latex-run-command; см. руководство по emacs . Нечто подобное в вашем .emacs должно сделать это:

(setq latex-run-command "pdflatex")

EHN
источник
9

Вы можете временно переключить AucTeX в режим PDF с помощью CTRLctp. Чтобы сделать это изменение постоянным набором

(TeX-PDF-mode t)

в вашем ~/.emacsфайле.

Бенджамин Банье
источник
очень полезный ответ .... но NB Ctrl-C Ctrl-T Ctrl-P (не Ctrl-C Т.П.)
Том
4

Разве это не должно быть

(setq TeX-PDF-mode t)

в .emacs?

Моя версия emacs (GNU 24) жалуется, когда я только что получил (TeX-PDF-mode t).

(Или, может быть, это потому, что я использую AucTeX , что удивительно.)

hargriffle
источник
1

После попытки нескольких подходов, тот, который работал для меня (также для AucTeX) был

M-x customize-groupдля TeX-command, и переписывания «Latex команды» pdflatex.

(Смена программы просмотра для открытия PDF-файла даже не требовалась, она просто работала.)

(идея отсюда .)

Latanius
источник
0

Я пытался использовать pdflatex с Auctex и / (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)in не ~/.emacsдолжно влиять на еще не созданные буферы. Нужно использовать либо (setq-default TeX-PDF-mode t), либо лучше предоставленную функцию (TeX-global-PDF-mode t).

CHRM
источник