[Top][All Lists]

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

Re: defcustom :version

From: Bill Wohler
Subject: Re: defcustom :version
Date: Sat, 11 Mar 2006 12:40:54 -0800

Luc Teirlinck <address@hidden> wrote:

> `M-x customize-changed RET 21.4 RET' is supposed to show the user all
> defcustoms that were added, or whose standard value changed, in Emacs
> 22.1.  That is the main purpose of the :version keyword.  Of course,
> the fact that you get a 2811 line long Custom buffer limits the
> usefulness of this feature.  Once upon a time, when Emacs releases
> used to be much more frequent than they are now, `M-x customize-changed'
> was one of the most useful things to do when a new Emacs version came out.

Thanks for telling me about customize-changed, Luc. I wasn't aware of
its presence, and yes, I would find it extremely useful with a new
version (of whatever).

I currently use some Perl to generate a list for MH-E's release notes,
but the algorithm probably isn't perfect (grep for defcustom before and
after, grab the second word, and diff).

Taking a quick look at the customize-changed code, it occurred to me
that the following would make sense and be fairly easy to implement
(although I am not suggesting we do it before the release):

1. Create a :package-version customize keyword.
2. Bind it to a custom-package-version symbol.
3. Refactor customize-changed to accept two new optional arguments which is
   the prefix of the package and the version symbol to use
   ('custom-version by default).
4. Add a customize-package-changed function which would call
   (customize-changed since-version prefix 'custom-package-version)

Note that #3 would address your concerns about the copious output from
the current implementation. You could say (customize-changed nil
"custom") to limit the output to changes in customize.

If this seems like a good idea, I would suggest we do make
:package-version a valid keyword (by safely adding a single line to the
cond in custom-handle-keyword) so that I can add it to MH-E before the
release so that it is there for future use.

Bill Wohler <address@hidden>  http://www.newt.com/wohler/  GnuPG ID:610BD9AD
Maintainer of comp.mail.mh FAQ and MH-E. Vote Libertarian!
If you're passed on the right, you're in the wrong lane.

reply via email to

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