Приложение H Стандартные хуки

Ниже приведён список некоторых переменных-хуков, которые позволяют вам предоставлять функции для вызова изнутри Emacs в подходящих случаях.

Большинство этих переменных имеют имена, оканчивающиеся на ‘-hook’. Они являются нормальными хуками, запускаемыми с помощью run-hooks. Значение такого хука — это список функций; функции вызываются без аргументов, и их возвращаемые значения полностью игнорируются. Рекомендуемый способ добавить новую функцию в такой хук — вызвать add-hook. См. Хуки для получения дополнительной информации об использовании хуков.

Переменные, имена которых оканчиваются на ‘-functions’, обычно являются ненормальными хуками (некоторый старый код также может использовать устаревший суффикс ‘-hooks’). Их значения — списки функций, но эти функции вызываются особым способом: им либо передаются аргументы, либо их возвращаемые значения используются каким-либо образом. Переменные, имена которых оканчиваются на ‘-function’, имеют в качестве значения одну функцию.

Это не исчерпывающий список, он охватывает только наиболее общие хуки. Например, каждый основной режим определяет хук с именем ‘имя-режима-mode-hook’. Команда основного режима запускает этот нормальный хук с помощью run-mode-hooks самым последним действием. См. Хуки режимов. Большинство дополнительных режимов также имеют хуки режимов.

Особая возможность позволяет указать выражения для вычисления, если и когда файл загружен (см. Хуки для загрузки). Эта возможность не является точно хуком, но выполняет схожую работу.

activate-mark-hook
deactivate-mark-hook

См. Метка.

after-change-functions
before-change-functions
first-change-hook

См. Хуки изменений.

after-change-major-mode-hook
change-major-mode-after-body-hook

См. Хуки режимов.

after-init-hook
before-init-hook
emacs-startup-hook
window-setup-hook

См. Файл инициализации.

after-insert-file-functions
write-region-annotate-functions
write-region-post-annotation-function

См. Преобразование форматов файлов.

after-make-frame-functions
before-make-frame-hook
server-after-make-frame-hook

См. Создание фреймов.

after-save-hook
before-save-hook
write-contents-functions
write-file-functions

См. Сохранение буферов.

after-setting-font-hook

Хук, запускаемый после изменения шрифта фрейма.

auto-save-hook

См. Автосохранение.

before-hack-local-variables-hook
hack-local-variables-hook

См. Локальные переменные файла.

buffer-access-fontify-functions

См. Ленивое вычисление текстовых свойств.

buffer-list-update-hook

Хук, запускаемый при изменении списка буферов (см. Список буферов).

buffer-quit-function

Функция, вызываемая для выхода из текущего буфера.

change-major-mode-hook

См. Создание и удаление локальных привязок буфера.

comint-password-function

Этот ненормальный хук позволяет производному режиму предоставить пароль для базового командного интерпретатора без запроса к пользователю.

command-line-functions

См. Аргументы командной строки.

delayed-warnings-hook

Командный цикл запускает этот хук вскоре после post-command-hook (см. выше).

focus-in-hook
focus-out-hook

См. Фокус ввода.

delete-frame-functions
after-delete-frame-functions

См. Удаление фреймов.

delete-terminal-functions

См. Несколько терминалов.

pop-up-frame-function
split-window-preferred-function

См. Дополнительные параметры отображения буферов.

echo-area-clear-hook

См. Настройка области эхо.

find-file-hook
find-file-not-found-functions

См. Функции для посещения файлов.

font-lock-extend-after-change-region-function

См. Область для подсветки после изменения буфера.

font-lock-extend-region-functions

См. Многострочные конструкции Font Lock.

font-lock-fontify-buffer-function
font-lock-fontify-region-function
font-lock-mark-block-function
font-lock-unfontify-buffer-function
font-lock-unfontify-region-function

См. Другие переменные Font Lock.

fontification-functions

См. Автоматическое назначение лиц.

frame-auto-hide-function

См. Закрытие окон.

quit-window-hook

См. Закрытие окон.

kill-buffer-hook
kill-buffer-query-functions

См. Уничтожение буферов.

kill-emacs-hook
kill-emacs-query-functions

См. Завершение Emacs.

menu-bar-update-hook

См. Строка меню.

minibuffer-setup-hook
minibuffer-exit-hook

См. Разное о минибуфере.

mouse-leave-buffer-hook

Хук, запускаемый, когда пользователь щёлкает мышью в окне.

mouse-position-function

См. Позиция мыши.

prefix-command-echo-keystrokes-functions

Ненормальный хук, запускаемый командами префикса (такими как C-u), которые должны возвращать строку, описывающую текущее состояние префикса. Например, C-u даёт ‘C-u-’ и ‘C-u 1 2 3-’. Каждая функция хука вызывается без аргументов и должна возвращать строку, описывающую текущее состояние префикса, или nil, если состояния префикса нет. См. Аргументы команд префикса.

prefix-command-preserve-state-hook

Хук, запускаемый, когда команда префикса должна сохранить состояние префикса, передав текущее состояние команды префикса следующей команде. Например, C-u должен передать состояние следующей команде, когда пользователь вводит C-u - или после C-u вводит цифру.

pre-redisplay-functions

Хук, запускаемый в каждом окне непосредственно перед его перерисовкой. См. Принудительная перерисовка.

post-command-hook
pre-command-hook

См. Обзор командного цикла.

post-gc-hook

См. Сборка мусора.

post-self-insert-hook

См. Клавиатурные карты и дополнительные режимы.

suspend-hook
suspend-resume-hook
suspend-tty-functions
resume-tty-functions

См. Приостановка Emacs.

syntax-begin-function
syntax-propertize-extend-region-functions
syntax-propertize-function
font-lock-syntactic-face-function

См. Синтаксическая подсветка Font Lock. См. Синтаксические свойства.

temp-buffer-setup-hook
temp-buffer-show-function
temp-buffer-show-hook

См. Временные отображения.

tty-setup-hook

См. Инициализация для конкретного терминала.

window-configuration-change-hook
window-scroll-functions
window-size-change-functions

См. Хуки для прокрутки окон и изменений.