From b56f98ab9a4eb1d8801f669f1f45e5c162dd00b9 Mon Sep 17 00:00:00 2001 From: "Richard M. Stallman" Date: Fri, 29 Nov 2002 15:12:50 +0000 Subject: [PATCH] Explain about ordering of alternatives in `choice'. --- lisp/ChangeLog | 21 ++++++++++++++++++++- lispref/customize.texi | 13 +++++++++++++ 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 636f5ec8867..ead4b7580b2 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,22 @@ +2002-11-29 Richard M. Stallman + + * mail/rmail.el (rmail-convert-to-babyl-format): + Make search for message delimiter case-sensitive. + + * simple.el (yank-window-start): New variable. + (yank): Record yank-window-start + (yank-pop): Use yank-window-start. + + * info.el (Info-additional-directory-list): Doc fix. + + * indent.el (indent-according-to-mode, indent-region): Doc fix. + + * tooltip.el (tooltip-gud-tips-p): Doc fix. + + * eshell/em-script.el: Require eshell. + + * eshell/esh-ext.el, eshell/em-cmpl.el: Require esh-util. + 2002-11-29 Kim F. Storm * mwheel.el: Avoid accidental yanking of text while scrolling with @@ -273,7 +292,7 @@ * emacs-lisp/autoload.el (update-autoloads-from-directories): Sort the list of files with no autoloads. -2002-11-16 Alan Shutko +2002-11-16 Alan Shutko * calendar/diary-lib.el (list-diary-entries): Pass a marker indicating source of entry to add-to-diary-list. diff --git a/lispref/customize.texi b/lispref/customize.texi index 3f107b3fb00..1fee9f8d6dd 100644 --- a/lispref/customize.texi +++ b/lispref/customize.texi @@ -661,6 +661,19 @@ In any alternative for which @code{nil} is not a valid value, other than a @code{const}, you should specify a valid default for that alternative using the @code{:value} keyword. @xref{Type Keywords}. +If some values are covered by more than one of the alternatives, +customize will choose the first alternative that the value fits. This +means you should always list the most specific types first, and the +most general last. Here's an example of proper usage: + +@example +(choice (const :tag "Off" nil) symbol (sexp :tag "Other")) +@end example + +@noindent +This way, the special value @code{nil} is not treated like other +symbols, and symbols are not treated like other Lisp expressions. + @item (radio @var{element-types}@dots{}) This is similar to @code{choice}, except that the choices are displayed using `radio buttons' rather than a menu. This has the advantage of -- 2.39.2