emacs-pretest-bug
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Customize Save for Future Sessions silently does not save hidden stuff


From: Drew Adams
Subject: Customize Save for Future Sessions silently does not save hidden stuff
Date: Sun, 23 Jan 2005 22:19:03 -0800

I'm not that familiar with Customize, so I may misunderstand what should
happen here, but -

1. M-x customize-variable RET apropos-do-all RET [or any other customizable
var]

2. Click Hide Value, to hide the variable.

3. Click Save for Future Sessions.

4. Message is that your custom file was saved - and it was...

5. But `apropos-do-all' was _not_ saved to it - nothing in the file has
changed.

The same thing happens for faces: if hidden, they are not saved.

IOW, it looks like variables and faces that are in state `hidden' are not
saved, but the user has the impression that they are (the custom file is
written). If you click Save for Future Sessions in a buffer with multiple
widgets, only the non-hidden widgets really get saved. If I'm right about
this happening, then this is really asking for trouble - users will be quite
surprised when they realize that not everything was saved as they thought.

What is the design goal here? Should users be able to save vars and faces
whose details are hidden? If _not_:

1. Is there a technical reason why not? Is it impossible to get the
appropriate value to be assigned to `saved-value' if a widget is hidden?

2. The global Save for Future Sessions button should give feedback about
each thing it did not save.

3. There should be a global button Show All, that shows everything, so that
the global Save for Future Sessions button can in fact be used to do what it
suggests it does.


BTW, the code for `custom-variable-save' gives an error for a hidden
variable, indicating that perhaps it doesn't know how to save a hidden
variable. However:

1. This code can seemingly never execute anyway interactively, because
`custom-variable-save' is only available on a menu (from State) that is only
available when the variable is _not_ hidden.

2. I don't see similar (error) code in `custom-face-save'.


BTW2, the code for this (Custom-save, custom-variable-save,
custom-face-save) is the same in this respect for Emacs 20 and Emacs 21
(including the useless error in custom-variable-save and lack of it in
custom-face-save), and the behavior is the same.







reply via email to

[Prev in Thread] Current Thread [Next in Thread]