aboutsummaryrefslogtreecommitdiffstats
path: root/lispref
diff options
context:
space:
mode:
authorDave Love2001-01-02 23:23:24 +0000
committerDave Love2001-01-02 23:23:24 +0000
commit4577e8cc563ba1283871d6aeaa3d0915a660bcb2 (patch)
treef9a27ecad2a85825dcc6769e21df47ace65d72c7 /lispref
parent9fbe132705339bc94121853b7bc9ec837286109c (diff)
downloademacs-4577e8cc563ba1283871d6aeaa3d0915a660bcb2.tar.gz
emacs-4577e8cc563ba1283871d6aeaa3d0915a660bcb2.zip
Add `radio' type. User variable doc strings and backquote in
defcustom.
Diffstat (limited to 'lispref')
-rw-r--r--lispref/customize.texi24
1 files changed, 18 insertions, 6 deletions
diff --git a/lispref/customize.texi b/lispref/customize.texi
index 2ce5f5ed4ae..da202b83142 100644
--- a/lispref/customize.texi
+++ b/lispref/customize.texi
@@ -177,17 +177,22 @@ turn this feature back on, if someone would like to do the work.
177 177
178 Use @code{defcustom} to declare user-editable variables. 178 Use @code{defcustom} to declare user-editable variables.
179 179
180@defmac defcustom option default doc [keyword value]... 180@defmac defcustom option default doc [keyword value]@dots{}
181Declare @var{option} as a customizable user option variable. Do not 181Declare @var{option} as a customizable user option variable. Do not
182quote @var{option}. The argument @var{doc} specifies the documentation 182quote @var{option}. The argument @var{doc} specifies the documentation
183string for the variable; it should normally start with a @samp{*}. This 183string for the variable. It should often start with a @samp{*} to mark
184marks the variable, for other purposes, as one that users may want to 184it as a @dfn{user option} (@pxref{Defining Variables}). Do not start
185customize. 185the documentation string with @samp{*} for options which cannot or
186normally should not be set with @code{set-variable}; examples of the
187former are global minor mode options such as
188@code{global-font-lock-mode} and examples of the latter are hooks.
186 189
187If @var{option} is void, @code{defcustom} initializes it to 190If @var{option} is void, @code{defcustom} initializes it to
188@var{default}. @var{default} should be an expression to compute the 191@var{default}. @var{default} should be an expression to compute the
189value; be careful in writing it, because it can be evaluated on more 192value; be careful in writing it, because it can be evaluated on more
190than one occasion. 193than one occasion. You should normally avoid using backquotes in
194@var{default} because they are not expanded when editing the value,
195causing list values to appear to have the wrong structure.
191 196
192When you evaluate a @code{defcustom} form with @kbd{C-M-x} in Emacs Lisp 197When you evaluate a @code{defcustom} form with @kbd{C-M-x} in Emacs Lisp
193mode (@code{eval-defun}), a special feature of @code{eval-defun} 198mode (@code{eval-defun}), a special feature of @code{eval-defun}
@@ -632,7 +637,7 @@ separately, according to the type specified for it.
632Like @code{list} except that the value must be a vector instead of a 637Like @code{list} except that the value must be a vector instead of a
633list. The elements work the same as in @code{list}. 638list. The elements work the same as in @code{list}.
634 639
635@item (choice @var{alternative-types}...) 640@item (choice @var{alternative-types}@dots{})
636The value must fit at least one of @var{alternative-types}. 641The value must fit at least one of @var{alternative-types}.
637For example, @code{(choice integer string)} allows either an 642For example, @code{(choice integer string)} allows either an
638integer or a string. 643integer or a string.
@@ -659,6 +664,13 @@ In any alternative for which @code{nil} is not a valid value, other than
659a @code{const}, you should specify a valid default for that alternative 664a @code{const}, you should specify a valid default for that alternative
660using the @code{:value} keyword. @xref{Type Keywords}. 665using the @code{:value} keyword. @xref{Type Keywords}.
661 666
667@item (radio @var{element-types}@dots{})
668This is similar to @code{choice}, except that the choices are displayed
669using `radio buttons' rather than a menu. This has the advantage of
670displaying documentation for the choices when applicable and so is often
671a good choice for a choice between constant functions
672(@code{function-item} customization types).
673
662@item (const @var{value}) 674@item (const @var{value})
663The value must be @var{value}---nothing else is allowed. 675The value must be @var{value}---nothing else is allowed.
664 676