goneovim
goneovim copied to clipboard
Smooth move cursor does unexpected jump when changing mode
Environment details
I've managed to reproduce in:
os: macOS Big Sur v11.6
nvim: v0.7.0
goneovim: v0.5.1 and nightly-1-g665100d
os: Windows 10 Home Single Language v21H2
nvim: v0.4.3
goneovim: v0.5.1
I haven't tried in Linux.
Pre-conditions
~/.config/goneovim/settings.toml
[Cursor]
SmoothMove = true
Reproduction steps
Consistent reproduction doing:
- Open Goneovim without loading any config file:
goneovim -u NONE
- Change from the default normal mode to any other mode, e.g. insert mode by pressing
i
.
Actual result
The cursor does a slight jump below its current line position before returning to the current line.
https://user-images.githubusercontent.com/42811720/168447122-36c5edec-5457-4813-91ab-f7e729a09d2a.mov
Expected result
The cursor stays in the current line during the mode change. (Video example using Neovide)
https://user-images.githubusercontent.com/42811720/168447171-b4a46a76-7ca1-4890-9e10-d006f9231327.mov
@HerCerM Hi, thanks for this issue report.
Hmmm, I've investigated this and it's a difficult problem, the reason this doesn't happen with neovide may be a completely different approach to how the animations are composed.
The problem seems to occur when showmode
is set, which seems to cause this appearance because when showmode
is set, the mouse movement to the command display area occurs as a UI event.
A good workaround is to set noshowmode
.
I will continue to investigate whether a workaround for this problem can be implemented on the Goneovim side.
Thanks for giving it a look.
The set noshowmode
does solve the issue, and it's a very easy workaround.
However, addressing it from Goneovim's side would be nice, if possible. It seems to me that most people prefer to have the mode in the status line, but for those (like me) who prefer it in its default place, it's a good thing that Goneovim would play nice with that.
The following seem to be related; https://github.com/neovide/neovide/issues/1316