Closed aldevv closed 3 years ago
Please provide steps to reproduce the issue.
Please provide steps to reproduce the issue.
I tried following steps but it worked correctly. Can you provide more exact steps and expected/actual behaviors?
foo abc abc abc abc
set lazyredraw
qa
to start macro recordingfaff
to move cursor to the 3rd 'a'q
to stop macro recording0
to move cursor to the head of line@a
to run the macroas an example, say you have a file with this line abc { abc }
repeated 5000 lines, like this
abc { abc }
abc { abc }
abc { abc }
.
.
.
abc { abc }
if you create a macro for deleting the { abc }
part in every line, you would do it like this:
qa
start macrot{d$0j
delete { abc } and move to the beginning of the next lineq
4999@a
Actual Behaviour
Applying this macro with set lazyredraw
doesn't work, you can see how the macro is deleting each { abc }
in the buffer in real time.
Expected Behaviour
Applying this macro with set lazyredraw
would freeze the buffer until the macro is done. then it should redraw the buffer to see the changes the macro did.
vim neovim 0.5.0 nightly
Thank you for the details. Let me try it out.
I could fix the issue at 52e0025. Please update to the latest. Thank you for the details to reproduce the issue.
Note that this issue was only fixed in below versions.
when using a macro with lazyredraw on, the screen should not redraw, but when using f, F, t and T, the screen will always redraw.
I tested this with a bare neovim config