Spec-Zone.ru › Elisp

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

Этот крючок используется для автоматического назначения лиц тексту в буфере. Он является частью реализации режима Jit-Lock, используемого Font-Lock.

Переменная: fontification-functions

Эта переменная содержит список функций, которые вызываются Emacs при перерисовке по мере необходимости, непосредственно перед перерисовкой. Они вызываются даже когда режим Font Lock не включен. Когда режим Font Lock включен, эта переменная обычно содержит только одну функцию, jit-lock-function.

Функции вызываются в указанном порядке, с одним аргументом, позицией буфера pos. В совокупности они должны попытаться назначить лица тексту в текущем буфере, начиная с pos.

Функции должны записывать назначенные лица, устанавливая свойство face. Они также должны добавить свойство не-nil fontified, ко всему тексту, которому были назначены лица. Это свойство сообщает системе перерисовки, что лица уже были назначены этому тексту.

Вероятно, разумно, чтобы функции ничего не делали, если символ после pos уже имеет свойство не-nil fontified, но это не обязательно. Если одна функция перезаписывает назначения, сделанные предыдущей, свойства после завершения работы последней функции — это те, которые действительно имеют значение.

Для повышения эффективности рекомендуется писать эти функции таким образом, чтобы они обычно назначали лица примерно 400-600 символам при каждом вызове.

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/Auto-Faces.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API