После нажатия Cc RET и компиляции моего .tex-файла я бы хотел закрыть буфер tex-shell, если компиляция прошла успешно. Как я могу это сделать?

1 ответ1

1

В моем .emacs меня есть следующий код:

(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 %t" 'TeX-master-file)
         master-file)
    (if (plist-get TeX-error-report-switches (intern master-file))
        (TeX-next-error t)
      (minibuffer-message "latexmk done"))))

(add-hook 'LaTeX-mode-hook
          (lambda () (local-set-key (kbd "C-0") #'run-latexmk))
      )

Это связывает C-0 с определенной функцией run-latexmk которая, в свою очередь, сохраняет все файлы текущего документа (на основе понятия master файла), а затем запускает latexmk . Если компиляция прошла успешно, окно компиляции закрывается. Вы можете легко (?) измените этот код в соответствии с вашими потребностями.

Этот ответ основан на этом и этом.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .