latexmk
aracılığıyla .tex belgeleri derlemek için
Latex, Emacs: automatically open *TeX Help* buffer on error and close it after correction of the error? aşağıdaki işlevini kullanın
:AUCTeX'te bir işlev (lateksmk varyantı) TeX-komut listesine nasıl eklenir?
(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")))))
nasıl .tex dosyalarında böylece TeX-command-list
o C-c C-c
için bu işlevi "add" olabilir bu işlevi yürütür? Ben
(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")))
çalıştı
[.tex dosyalar üzerinde çalıştırıldığında C-c C-c
varsayılan olarak run-latexmk
kullanmalıdır] ancak iletisiyle başarısız olur: TeX-command-expand: Wrong type argument: stringp, (function run-latexmk)
Sen istemiyoruz
harika görünüyor, fantastik çalışır. Çok teşekkürler, Ivan! –
'LaTeX-mode-hook' içinde' Tex-command-list '' içinde birden fazla seçenek ayarlıyorum, böylece herhangi birini Cc Cc'ye atabiliyorum ve bunlardan birini 'TeX-command-default' olarak ayarlıyorum. LaTeX-mode-hook ', ama tüm derleme işlemini çalıştırmak için başka bir işlev kullanıyorum, bu yüzden Cc Cc'den birini seçmek zorunda değilim, bu işlevdeki" Tex-command-default "değerini nasıl kullanabilirim? – CodyChan
Diğer işlevinize TeX-komut varsayılanını izin vermeye çalışın örn. (defun xxx() (let ((TeX-komut-varsayılan "komutum")) ...)) –