On 2020-03-04 13:00, Chris Jones wrote: > Scenario: > > - I open a file > - I make one big global change (C0)... say via substitute+regex > - I proceed to make more changes (C1, C2, ... Cn). > > While *still editing the file* I realize that the initial change > (C0) was in error. > > Can I undo the initial change (C0) and keep all the ensuing changes? > > Or... > > Go back to the initial state of the buffer, and make vim reapply > all the C1-Cn changes? > > Standard vim only please, no plugins.
I don't think there's a native way to play back all the changes as a rebase. If I had a dire need to do as much, I'd do a little do/undo/diff/patch tango, something like :w current.txt then undo to C1 :w c1.txt then undo once more take you back to the pre-C0 change and save that: :w pre-c0.txt Then, in the shell $ diff -u c1.txt current.txt > rest_of_the_changes.txt and run that patch against the pre-c0.txt You might be able to use git to checkin various points and then use its rebasing to help you out. But in pure vim? Not much. -tim -- -- You received this message from the "vim_use" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_use" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/vim_use/20200304121950.7fbf49a1%40bigbox.attlocal.net.
