The VSCodeVim team prioritizes issues based on reaction count.
This is a BUG REPORT:
Environment:
What happened:
Pressing g$ moved to the first character in the next visual line.
What did you expect to happen:
moved to the last character in the current visual line.
How to reproduce it:
Press g$ in the start of a soft-wrapped line.
Same problem here. The cursor briefly flashes at the end of the line but then moves to the next visual line.
For now, this can be fixed by rebinding g$ to g$h
I have also experienced this problem and have come up with a simple fix that works for me. In settings.json add the following settings
"vim.normalModeKeyBindingsNonRecursive":[
{"before": ["g","$"], "commands": [{"command": "cursorMove", "args": {"to": "wrappedLineEnd"}}]},
]
I tried to add the same mapping to vim.visualModeKeyBindingsNonRecursive too, but since it wasn't going through the correct vim code it didn't extend the selection, so it's only a partial workaround.
I had a quick look at the code to see what was causing the problem, and it seemed to be calling the right API function (the same one that I'm mapping to here) but must do some position manipulation afterwards that I don't understand well enough to try to fix.
Most helpful comment
Same problem here. The cursor briefly flashes at the end of the line but then moves to the next visual line.
For now, this can be fixed by rebinding g$ to g$h