Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Undo Redo functionality quit working with upgrade to May 1.13 release #1814

Closed
bruparel opened this issue Jun 9, 2017 · 18 comments
Closed
Labels

Comments

@bruparel
Copy link

bruparel commented Jun 9, 2017

  • Click thumbs-up 👍 on this issue if you want it!
  • Click confused 😕 on this issue if not having it makes VSCodeVim unusable.

The VSCodeVim team prioritizes issues based on reaction count.


Is this a BUG REPORT or FEATURE REQUEST? (choose one):
BUG REPORT

Environment:

  • VSCode Version: 1.13 may release
  • VsCodeVim Version: 0.8.4
  • OS: Mac OS-X 10.9.5

What happened: The upgrade to 1.13 just now undo (key 'u') and Redo (Ctrl-R) to stop working.

What did you expect to happen: undo my current changes

How to reproduce it:quite simple just try it.

@michaelHL
Copy link

Possible duplicate of #1783

@bruparel
Copy link
Author

bruparel commented Jun 9, 2017

@michaelHL , I just read the issue #1783 that you linked above. I do not believe that the problem is with the NeoVim integration. I had NeoVim working fine with the previous release of VSCode. This happened just now when I upgraded to the VSCode Version 1.13 approximately an hour ago. It seems to be a latest VScode release not working well with VSCodeVim plugin version 0.8.4

@xconverge
Copy link
Member

I can undo and redo on osx with 1.13 and 0.8.4... can you disable neovim integration temporarily to see if it may just be that other issue?

@bruparel
Copy link
Author

bruparel commented Jun 9, 2017

@xconverge, I just tried it. Negative. disabling NeoVim integration does not help with VIM Undo Redo functionality. I even exited VSCode and restarted it after commenting the NeoVIM integration out in settings.json. No go.

@xconverge
Copy link
Member

I cannot reproduce this...weird...

@michaelHL
Copy link

@bruparel I have no NeoVim in my PC but the Undo, Redo stop working after saving too...(since VSCode update to 1.13)

@francescarpi
Copy link

Me too.

@alexriedl
Copy link

This is an issue on linux as well. It seems that undo/redo work until you save the file. Then any changes that were made before the save cannot be undone/redone

@Chillee
Copy link
Member

Chillee commented Jun 9, 2017

This is strange... People reported this bug before, but it seems that this bug only became widespread with the update to VSCode 1.13...

@Chillee
Copy link
Member

Chillee commented Jun 9, 2017

Alright I figured out the cause of the issue. It has to do with this lovely function:

https://github.com/VSCodeVim/Vim/blob/master/extension.ts#L411

For whatever reason, VSCode is now reporting many more saves as "content changed from disk".

Removing that "historyTracker.clear()" line fixes the issue, but undoubtedly causes other issues. I'll need to do a little digging to figure out the root cause of this.

@Chillee
Copy link
Member

Chillee commented Jun 9, 2017

More specifically, I'm 70% sure that this is the change that is causing the issues:

microsoft/vscode#28077

Chillee added a commit to Chillee/Vim that referenced this issue Jun 10, 2017
Chillee added a commit to Chillee/Vim that referenced this issue Jun 10, 2017
@Chillee Chillee reopened this Jun 10, 2017
@Chillee
Copy link
Member

Chillee commented Jun 10, 2017

This issue is fixed on master, which means we would normally close it, but I'm going to keep this open for now for people searching for it.

@Chillee
Copy link
Member

Chillee commented Jun 11, 2017

We just pushed out a new release, and this problem should be fixed in v0.8.5

@Chillee Chillee closed this as completed Jun 11, 2017
@bruparel
Copy link
Author

Just to let everyone know: you will have much better luck with the Undo functionality IF you set (or remove) the 'autosave' from your settings.json. With AutoSave On (even after delay), the Undo works much more erratically. Even with the autosave disabled, the Undo is nowhere near the rock solid reliability of 'MVIM' for instance. My fingers are trained to save frequently and with the NeoVim Integration, doing a ":w" or ":wa" is natural for me. Just a few pointers ... :)

@Chillee
Copy link
Member

Chillee commented Jun 12, 2017

@bruparel Wait, are you still having issues with the undo functionality after the new update?

@bruparel
Copy link
Author

If I have "files.autoSave": "afterDelay" in my settings.json file. As I said above, I removed it and now it works fine.

@Chillee
Copy link
Member

Chillee commented Jun 12, 2017

@bruparel Could you elaborate on any issues you're having with "files.autoSave": "afterDelay"? I thought we fixed all issues related to undo and saving.

@sebbasttian
Copy link

I'm having the same behavior than @bruparel: if setting "files.autoSave" is set to "afterDelay" the undo and redo functions don't work after save (with all the other options works fine).

Version: 1.19.0
Commit: 816be6780ca8bd0ab80314e11478c48c70d09383
Date: 2017-12-14T09:56:48.842Z
Shell: 1.7.9
Renderer: 58.0.3029.110
Node: 7.9.0
Architecture: x64
OS: Fedora 27

Let me know if you need me to open another issue for this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

7 participants