używam następującą funkcję z Latex, Emacs: automatically open *TeX Help* buffer on error and close it after correction of the error? do opracowania dokumentów .tex poprzez latexmk
:Jak dodać funkcję (wariant latexmk) do listy poleceń TeX w AUCTeX?
(defun run-latexmk()
(interactive)
(let ((TeX-save-query nil)
(TeX-process-asynchronous nil)
(master-file (TeX-master-file)))
(TeX-save-document "")
(TeX-run-TeX "latexmk"
(TeX-command-expand "latexmk -pdf %s" 'TeX-master-file); adjusted
master-file)
(if (plist-get TeX-error-report-switches (intern master-file))
(TeX-next-error t)
(progn
(demolish-tex-help)
(minibuffer-message "latexmk: Done")))))
Jak mogę „dodać” tę funkcję do TeX-command-list
tak że C-c C-c
w plikach .tex wykonuje tę funkcję? [C-c C-c
powinien używać run-latexmk
jako domyślny, gdy wykonywane na plikach .tex]
Próbowałem
(add-hook 'LaTeX-mode-hook
(lambda()
(add-to-list 'TeX-command-list
'("latexmk" #'run-latexmk
TeX-run-command nil t :help "Run latexmk") t)
(setq TeX-command-default "latexmk")))
ale nie jest on z komunikatem: TeX-command-expand: Wrong type argument: stringp, (function run-latexmk)
(wzięte od * Messages *)
wygląda fantastycznie, działa fantastycznie. Wielkie dzięki, Ivan! –
Ustawiam wiele opcji na 'liście poleceń Tex' w' LaTeX-mode-hook', więc mogę spakować dowolną z 'Cc Cc', i ustawię jedną z nich jako' Domyślna komenda 'TeX' w' LaTeX-mode-hook', ale używam innej funkcji do uruchomienia całego procesu kompilacji, więc nie muszę wybierać jednego z 'Cc Cc', jak mogę użyć wartości' Tex-command-default' w tej funkcji? – CodyChan
Spróbuj opuścić domyślne polecenie TeX-a w innej funkcji, np. (defun xxx() (let ((domyślne polecenie TeX "moje polecenie")) ...)) –