Subject: bug#66394: 29.1; Make register-read-with-preview more useful

From: Eshel Yaron <[email-masked]>
Date: Sat, 02 Dec 2023 11:54:17 +0100

Bastien Guerry <[email-masked]> writes:

> Thierry Volpiatto <[email-masked]> writes:
>
>>> - C-x r s would display the preview and copy the region to the "b"
>>>   register as soon as the "b" key is hit (using read-key).
>>
>> I suggest you use M-n RET instead if you want to be sure you don't
>> overwrite a register.
>
> What I am suggesting is to store the register _as soon as_ the user
> hits the "b" key.
>
> Since the recent changes, I need to hit one additional keystroke for
> zero benefit, which is a net less when you use registers a lot.
>
> I use "a", "b", "c" registers for quick copy and paste and can easily
> remember them; when I need more, I use register-list.el.
>
>> It is what it is doing actually with minibuffer.  Hitting "a" highlight
>> register "a" and send a message "overwriting register", then you can hit
>> RET if you want to overwrite.
>
> This might be useful in some cases. I don't suggest to change this. I
> suggest to allow the previous behavior for empty registers.
>
>> I think using read-key+minibuffer would be very complicated and would
>> need much more code, this for a small benefit: Saving one key (RET).
>
> I would say this is not a small benefit.

FWIW, I second Bastien's request to restore the existing behavior as the
default, or at least provide it as an option.  I think Michael requested
that as well in the beginning of this thread.

This patch brings some nice benefits, but it also presents a regression
in terms of UX, perhaps we could avoid that or make it opt-in?  It would
also be great if there were a NEWS entry that clearly describes the user
visible changes.

Thanks,

Eshel