Subject: RE: [External] : Re: bug#11445: 24.0.96; Customize buffer edit fields should have undo

From: Drew Adams <[email-masked]>
Date: Wed, 2 Jun 2021 16:43:57 +0000

> > A text editing field in Customize is like text
> > editing in general.  Why shouldn't undo be available
> > to users here?
> 
> As far as I can tell, `undo' works fine in text fields in Customize
> buffers.  Are you still seeing this problem in recent Emacs versions?

Good question.  Pulling up Emacs 23 now to check what
this was about...

Some editable fields, at least, do have undo.  But not
once you've chosen `Set for current session'.

Just as you can continue to edit a field after you've
chosen to set the value, so I think you should be able
to undo previous edits you made.

Why would we turn off undo, just because you chose set,
or even save?  As long as editing is available so should
undo be available. (We don't change fields to read-only
just because you chose set or save.)

In fact, the problem is worse.  Consider customizing
an option such as `Info-default-directory-list'.  Each
editable field has its own undo, and as soon as you
move to another editable field and edit it you lose
the ability to undo changes you made previously to
the first field.  You can then try to make other
changes to the already changed first field, but undo
then takes you back only as far as what was frozen
when you went on to edit the second field.  This
isn't helpful.  You should be able to undo globally,
throughout the Customize buffer.

Secondly, considering "editing" more broadly, why not
let undo apply even to other changes you make in the
buffer, from `Toggle' to a `Value Menu' choice.  The
point is to be able to undo changes you've made to
the option, regardless of whether you've chosen set
or save yet.

These non-edit-field kinds of changes are not in the
same ball-park, admittedly, so fixing this for them
might involve more work.  But this is something to aim
for, and it should be part of this bug fix (enhancement
request, if you prefer).

In particular, consider `customize-face' changes.
For the most part changes to attributes involve
using `Value Menu'.  It's important, I think, to be
able to undo a bunch of such changes, and not just
changes in an individual editable field.
___

There, that constitutes a needed supplement to my
admittedly terse bug report.  At least I'm thinking
that this is what I was thinking of.
___

That was all taking a look with Emacs 23.4.  Now
let me look at Emacs 27.2, to see if any of that
has already been fixed...  And I see no improvement
in any of that.  I'd ask that this bug remain open.
HTH.