Selection of several lines does not persist after moving (w/ neovim)
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 15.2k
- Forks
- 1.5k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 6
Description
- 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.15.0
- VsCodeVim Version: 0.9.0
- OS: macOS Sierra 10.12.6
What happened:
When using VSCodeVim with neovim integration, moving several lines in visual mode does not work as expected.
Using the ex mode command :m'>+1<CR>gv=gv (or :'<,'>m'>+1<CR>gv=gv), which is the canonical mapping for moving several lines up from the vim wiki, the selected lines do move up but the selection is not the previously selected lines.
What did you expect to happen:
The lines that were selected previously and moved to still remain selected after executing the command (either by mapping it or executing it directly).
For repeating the above command (to move up 2 lines, for example), you would have to reselect - which is not the case in vim.
How to reproduce it:
Enable neovim integration, select a few lines in visual mode and try to execute the above command.
How I handle this currently:
Add the following to your user settings (for Mac users):
"vim.handleKeys": {
"∆": false,
"˚": false
}
and remap Alt+Up and Alt+Down to Alt+K and Alt+J respectively.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the visual-mode movement with Neovim integration using the documented :m and gv commands. Then trace the VSCodeVim handling for visual selections and Ex commands; done means moved lines remain selected and repeating the command works without reselecting them.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- neovim, typescript, vscode
- Domain
- developer-experience, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100