Ville Skyttä <ville.skytta(a)xemacs.org> wrote:
On Thu, 2002-08-29 at 23:56, Karr, David wrote:
/.../
> I navigated through "Emacs" ->
"Programming" -> "Languages" -> "C". I found
> "Hanging Braces Alist", which apparently controls the insertion of
newlines
> before and after braces, which was what I wanted to change from the default
> (from end of line to next line).
>
> So, I clicked on the right-pointing arrow, referred to as the "Show"
button.
>
> This presented two radio buttons, for "Use style settings" and
"override
> style
> settings". Below these two, however, was the following, repeated 20 times
> (the
> "[]" things are checkboxes):
>
> [] nil : [Choice] Newline [] before, [] after brace
/.../
This seems to be due to some change in the Widget library in XEmacs
21. I've minimized the case to the following:
1. Put this into a file widget-test.el:
(require 'custom)
(define-widget 'test-widget 'item
"A test widget."
:match (lambda (widget value) t))
(defcustom testvar nil
"A test"
:type '(set (cons (test-widget :value a)
(item :value b)))
:group 'test)
2. Start XEmacs with "xemacs -q -no-site-file -l widget-test.el".
3. Enter M-x customize RET test RET.
4. Click on the little arrow after "Testvar".
Notice that the car of the shown cons cell is `nil'. In XEmacs 20.4
(and all versions of FSF Emacs with Custom support), it's `a'. Thus
this is a regression in XEmacs 21.
Note that the test case is almost completely minimized. I.e. the
:match function is necessary, as well as both the `set' and the `cons'
sexp widgets (exactly what the cdr part of the `cons' widget is seems
to be insignificant, though).