Re: Customize Rogue
Luc Teirlinck <[email protected]> Thu, 13 Mar 2003 22:21:16 -0600 (CST)
| Newsgroups | gmane.emacs.devel,gmane.emacs.customize |
|---|---|
| Message-ID | <[email protected]> |
Per Abrahamsen wrote: Uh, does initsplit.el use multiple custom-set-variables? That is guarenteed to cause problems whenever the user tries to modify the variables. If so, it *really* should use setq (or a set-activate woralike) instead. Maybe the existence if initsplit.el is an argument for including set-activate in Emacs, to make it easier to write such tools. It is hard for automated tools to read doctrings to find the proper Lisp function to set the variable. Even if the current custom-set-variables and custom-set-faces forms would be replaced by a series of custom-setq calls (which would be a big plus for people who like to combine use of Custom with Lisp based customizations) there still would, as is apparent from David's messages, be a legitimate need to perform customizations that are outside of Custom's control (and hence could not be done using custom-setq). If done by hand, it is sufficient if a Lisp alternative is available and mentioned in the documentation string, although it would help if the alternative was a function with the same name as the variable (as is the case for minor modes), to avoid having to remember two different names for exactly the same functionality and to eliminate the need for a C-h v. I do not know whether it would be possible to standardize such a naming convention sufficiently to make it safe for automated use. If not, then I believe that there is indeed a need for set-activate. It is possible to abuse that function. But the documentation string could make clear what it is intended to be used for and what not. In particular, the documentation string would clearly state that it is definitely not meant to set parameters from Lisp code, but instead for customizations that are outside Custom's control, mainly in automated use. It is a very small function, it is not exactly going to "bloat" custom.el. Sincerely, Luc.