Применение пользовательских настроек
Следующие функции отвечают за установку пользовательских настроек переменных и шрифтов соответственно. Когда пользователь вызывает «Сохранить для будущих сеансов» в интерфейсе настройки, это реализуется путем записи custom-set-variables и/или custom-set-faces в файл настроек, который будет обработан при следующем запуске Emacs.
- Функция: custom-set-variables &rest args
Эта функция устанавливает настройки переменных, указанные в args. Каждый аргумент в args должен иметь вид
(var expression [now [request [comment]]])
var — имя переменной (символ), а expression — выражение, результат вычисления которого задаёт желаемое значение.
Если для var форма
defcustomбыла вычислена до этогоcustom-set-variablesвызова, expression вычисляется немедленно, и значение переменной устанавливается на результат. В противном случае expression сохраняется в свойствеsaved-valueпеременной для вычисления при вызове соответствующейdefcustom(обычно при загрузке в Emacs библиотеки, определяющей эту переменную).Элементы now, request и comment предназначены только для внутреннего использования и могут быть опущены. now, если не
nil, означает установку значения переменной немедленно, даже если формаdefcustomпеременной не была вычислена. request — список функций, которые должны быть загружены немедленно (см. Названные функции). comment — строка, описывающая настройку.
- Функция: custom-set-faces &rest args
Эта функция устанавливает настройки шрифтов, указанные в args. Каждый аргумент в args должен иметь вид
(face spec [now [comment]])
face — имя шрифта (символ), а spec — настроенное описание шрифта для этого шрифта (см. Определение шрифтов).
Элементы now и comment предназначены только для внутреннего использования и могут быть опущены. now, если не
nil, означает установку описания шрифта немедленно, даже если формаdeffaceне была вычислена. comment — строка, описывающая настройку.
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/Applying-Customizations.html