Типы настройки
При определении пользовательского параметра с помощью defcustom, необходимо указать его тип настройки. Это объект Lisp, который описывает (1) какие значения являются допустимыми и (2) как отобразить значение в буфере настройки для редактирования.
Вы указываете тип настройки в defcustom с помощью ключевого слова :type. Аргумент :type вычисляется, но только один раз при выполнении defcustom, поэтому не имеет смысла, если значение должно изменяться. Обычно мы используем цитируемую константу. Например:
(defcustom diff-command "diff" "The command to use to run diff." :type '(string) :group 'diff)
В общем случае, тип настройки представляет собой список, первым элементом которого является символ, одно из имен типов настройки, определенных в следующих разделах. После этого символа следует несколько аргументов, зависящих от символа. Между символом типа и его аргументами можно необязательно записать пары «ключ-значение» (см. Ключевые слова типа).
Некоторые символы типов не используют аргументы; они называются простыми типами. Для простого типа, если вы не используете пары «ключ-значение», вы можете опустить скобки вокруг символа типа. Например, просто string как тип настройки эквивалентен (string).
Все типы настройки реализованы как виджеты; см. Введение в Библиотеке виджетов Emacs для подробностей.
| • Простые типы | Простые типы настроек: sexp, целое число и т.д. | |
| • Составные типы | Создавать новые типы из других типов или данных. | |
| • Вставка в списки | Вставка элементов в список с помощью :inline. |
|
| • Ключевые слова типа | Пары «ключ-значение» в типе настройки. | |
| • Определение новых типов | Присваивание имени вашему типу. |
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/Customization-Types.html