-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Issue with cursor position using visual line movement (gj
and gk
)
#1323
Comments
copying comment from dupe ticket linked: This is a tough one I couldn't figure out a way to get the start and end column positions of the wrapped line. I tried this:
but moving the cursor 3 times for every 1 time we want to move it makes no sense from a performance standpoint. I think that we need to get wrappedLine info via the vscode API but I could not find it currently... Then we could skip using cursor move and do the same sort of moves we do as j and k, however we would use the wrappedLine start and end column instead of 0 and end of line |
related microsoft/vscode#23045 |
New user here having this issue. I had trouble following this issue since it was spread across a several of PRs/Issues so I might just be misunderstanding, but as far as I can tell it looks like it was supposed to have been fixed in May with #1552 I'm not intending to do anything with folding, but trying to get my I'm still seeing the initial behavior where cursor position isn't retained (as seen in the gifs above). Am I missing something? |
@jessejanderson |
This still seems like an issue, If anyone has figured out a configuration which works I'm all 👂. VSCode - 1.24.1 |
I also have this issue. Would love to see a solution, or any form of workaround! |
I don't know if it's related, but when moving a number of lines using |
For me it's an issue when moving to/from a line that spans more than row. |
This remains an isse even with |
Still an issue for me, as well. |
Still an issue. |
@J-Fields what vscode version will we see your fix in? |
@rightaway Please see #4127 |
gj
and gk
)
Still met this problem 😢 |
I think this has worked for a while but I can't get this to work anymore. @J-Fields did your fix somehow get removed? |
I was having this issue as well. I solved it by following the instructions given on #3623 for setting up keybindings in VSCode by opening keyboard shortcuts JSON file from the command palette. Just need to add following keybindings in the file: {
"key": "up",
"command": "cursorUp",
"when": "editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
"key": "down",
"command": "cursorDown",
"when": "editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
"key": "k",
"command": "cursorUp",
"when": "editorTextFocus && vim.active && !inDebugRepl && vim.mode == 'Normal' && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
},
{
"key": "j",
"command": "cursorDown",
"when": "editorTextFocus && vim.active && !inDebugRepl && vim.mode == 'Normal' && !suggestWidgetMultipleSuggestions && !suggestWidgetVisible"
} This will allow moving between visual wrapped lines and also the cursor position for different lines will not reset. Also, by following above instructions, you can remove following from your settings if you are using it as these don't work: "vim.otherModesKeyBindingsNonRecursive": [
{
"before": ["j"],
"after": ["g", "j"]
},
{
"before": ["k"],
"after": ["g", "k"]
}
] I think by using this solution, this issue can be closed. Hope this helps! |
it's buggy in visual mode
it breaks 5j or 3k for example |
shame on you... |
An issue for me too, but in standard terminal Vim - not in VSCode. I map The column position is not preserved when going through a paragraph when using Funnily enough, this is not an issue when using
I had the standard mapping in my
After adding the following lines, the issue was fixed:
I was trying to fix a separate issue involving using line jumping, and the fix for that also seemed to fix the issue with preserving columns. Odd, but it works |
Please thumbs-up 👍 this issue if it personally affects you! You can do this by clicking on the emoji-face on the top right of this post. Issues with more thumbs-up will be prioritized.
What did you do?
I've set the following as I like to work with word wrap enabled:
I noticed a discrepancy in behaviour for lines without wrapping. As you navigate between lines of varying length the cursor position doesn't keep its horizontal position.
The following GIFs just show motion using
j
andk
.I would expect both GIFs to show the same thing regardless if the
gj
andgk
mappings are applied.What did you expect to happen?
Expected behaviour (the keybinding mappings not applied):
What happened instead?
Current behaviour (the keybinding mappings applied):
Technical details:
The text was updated successfully, but these errors were encountered: