Добавить команду или среду в список автозаполнения AucTeX

Я часто использую функцию автозаполнения для команд и сред AucTeX через функции TeX-insert-macro и LaTeX-environment. Но есть ли способ добавить во встроенный список больше команд и макросов (\enquote{}, \noindent и т.д.)?


person NVaughan    schedule 07.09.2013    source источник


Ответы (1)


Стандартный способ добавить поддержку макросов и среды — написать файл стиля, он задокументирован здесь: https://www.gnu.org/software/auctex/manual/auctex.html#Style-Files Соответствующие функции: TeX-add-symbols и LaTeX-add-environments.

Чтобы добавить новые макросы и среды без создания файлов стилей, см. этот ответ: https://stackoverflow.com/a/17249399/2442087 Например, чтобы добавить макрос foo и среду bar, добавьте это в свой файл инициализации:

(add-hook 'LaTeX-mode-hook
      (lambda ()
        (TeX-add-symbols "foo")
        (LaTeX-add-environments "bar")))
person giordano    schedule 07.09.2013
comment
Спасибо, но это только меняет лицо команды; он не добавляет его в список макросов автозаполнения --- насколько я мог видеть. - person NVaughan; 07.09.2013
comment
На самом деле эти команды не меняют шрифт, а добавляют макросы и среды к переменным TeX-symbol-list и LaTeX-environment-list, это то, что вам нужно. Так объясни, что ты сделал. Обратите внимание, что вам может понадобиться перезапустить Emacs, чтобы изменения вступили в силу. - person giordano; 07.09.2013