Subject: Re: bug#18886: 24.4; M-v no longer works in CUA-mode.

From: Kim Storm <[email-masked]>
Date: Thu, 30 Oct 2014 21:39:18 +0100

On 2014-10-30 20:23, Stefan Monnier wrote:
>> I don't have time to try to get up to date with the repository stuff,
>> so I have just included some patches for you to look at -- please
>> commit them if you think they are acceptable (they are only lightly
>> tested so far).
> Thanks, installed into emacs-24, with minor changes (mostly I demoted
> the defcustom to a defvar, because I think the right fix will be to move
> the setting to simple.el where it will be configured yet differently
> (probably allowing delete-active-region to be set to a character)).
Thank you.

>
> I think further changes will be needed, tho.  E.g. cua-delete-region
> should probably disappear (i.e. be an alias for delete-active-region).
Yes, it should definitely go away.
>> Note that the new defcustom is unconditionally set to ?0
>> by cua-mode if cua-mode-copy-to-register-0 is enabled (default),
> Right, I added a FIXME about it. Good.
>
>> Also, the new replace command only works if save-to-register
>> is non-nil, as it uses the old-text copy in that register (instead
>> of saving another copy as the original code in cua did).
> BTW, I think that instead of scavenging the undo log we should place an
> overlay at the last delete so we can directly grab the "replacement text".
Yes - I would like to do that, as the current code is deficient in the sense
that any movement or editing will terminate the "replacement text".
I will try it when I have some time to improve on it.

>
>> Finally, using a C-u arg should replace until eob according to the
>> doc string -- it actually replaces max 1000000 instances; this
>> is just laziness on my part.
> I used (point-max) which should work well and is only 4 extra characters ;-)
Nice !

Kim