Когда использовать автоматическую загрузку
Не добавляйте комментарий автозагрузки, если это действительно не необходимо. Автозагружаемый код всегда глобально видим. После того, как элемент загружен автоматически, нет совместимого способа вернуться к его незагрузке (после того, как пользователи привыкнут к его использованию без явной загрузки).
- Наиболее распространенные элементы для автоматической загрузки — это интерактивные точки входа в библиотеку. Например, если python.el — это библиотека, определяющая основной режим для редактирования кода Python, загрузите автоматически определение функции
python-mode, чтобы люди могли просто использовать M-x python-mode для загрузки библиотеки. - Переменные обычно не нуждаются в автоматической загрузке. Исключением является случай, если переменная сама по себе полезна без загрузки всей определяющей библиотеки. (Пример — что-то вроде
find-exec-terminator.) - Не загружайте автоматически пользовательский параметр только для того, чтобы пользователь мог его установить.
- Никогда не добавляйте комментарий автозагрузки, чтобы заглушить предупреждение компилятора в другом файле. В файле, который генерирует предупреждение, используйте
(defvar foo), чтобы заглушить предупреждение об неопределенной переменной, иdeclare-function(см. Объявление функций), чтобы заглушить предупреждение об неопределенной функции; либо потребуйте соответствующую библиотеку; или используйте явное утверждение автозагрузки.
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/When-to-Autoload.html