42.12.6 Функции для работы с лицами

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

Функция: face-list

Эта функция возвращает список всех определённых имён лиц.

Функция: face-id face

Эта функция возвращает номер лица для лица face. Это число, которое однозначно идентифицирует лицо на низком уровне внутри Emacs. Обращаться к лицу по его номеру требуется редко. Однако функции, которые манипулируют глифами, такие как make-glyph-code и glyph-face (см. Глифы), обращаются к номерам лиц внутренне. Обратите внимание, что номер лица хранится как значение свойства face символа лица, поэтому мы не рекомендуем устанавливать это свойство лица в какое-либо значение самостоятельно.

Функция: face-documentation face

Эта функция возвращает строку документации лица face или nil, если для него не было указано ни одной.

Функция: face-equal face1 face2 &optional frame

Эта функция возвращает t, если лица face1 и face2 имеют одинаковые атрибуты для отображения.

Функция: face-differs-from-default-p face &optional frame

Эта функция возвращает не nil, если лицо face отображается иначе, чем лицо по умолчанию.

Псевдоним лица предоставляет эквивалентное имя для лица. Вы можете определить псевдоним лица, присвоив символу-псевдониму свойство face-alias со значением, равным имени целевого лица. В следующем примере modeline делается псевдонимом для лица mode-line.

(put 'modeline 'face-alias 'mode-line)
Макрос: define-obsolete-face-alias obsolete-face current-face when

Этот макрос определяет obsolete-face как псевдоним для current-face, а также помечает его как устаревший, указывая, что он может быть удалён в будущем. when должна быть строкой, указывающей, когда obsolete-face был объявлен устаревшим (обычно строка с номером версии).