On Mi, 22 Mai 2013,
v...@googlecode.com wrote:
> Status: New
> Owner: ----
> Labels: Type-Defect Priority-Medium
>
> New issue 134 by
hkpt...@gmail.com: Pasting over visually selected
> line of new buffer not correctly undoable
>
http://code.google.com/p/vim/issues/detail?id=134
>
> Steps to reproduce:
> 1. vim -u NONE -N
> 2. ifoo<ESC>yy
> 3. :ene!
> 4. Vp
> 5. u
> 6. :set modified?
>
> Expected:
> The buffer should be empty after undoing the paste over the visually
> selected line.
>
> Instead:
> The buffer retains the last line of what was pasted, even though the
> modified state is set to nomodified. No further undo is possible.
>
> Version/OS tested:
> 1. VIM - Vi IMproved 7.3, 1-905, NetBSD
> 2. VIM - Vi IMproved 7.3, 1-762, Cygwin
> 3. VIM - Vi IMproved 7.3, 1-46, MS-Windows 32-bit GUI
This seems to be an issue with saving enough lines for undo. This
usually happens before putting by calling op_delete(). Unfortunately,
undo isn't stored for new empty buffers. In theory, op_put should also
store undo information, however it seems to me, that it never ever
stores any information for line wise putting (since the computed size of
the range in u_savecommon() will always be zero). However, the attached
patch fixes it (at least for the case of putting into an empty buffer).
regards,
Christian
--
Es lohnt sich nicht, sich an einen Strohhut zu klammern.
-- Heinz Erhardt