When typing too fast, Vim keystrokes ignored, VS Code does other things
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 15.2k
- Forks
- 1.5k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 6
Description
Describe the bug
Typing faster than VS Code can update (especially where there's something making VS Code go slower than usual) causes the key strokes to be interpreted as regular VS Code key strokes rather than Vim key strokes.
F.e., if I am typing fast, and the intellisense for some reason takes longer (maybe a bigger project or bigger file, etc) then when I hit cmd-c (ctrl-c in windows) to exit INSERT mode, and then hit j and k to move up or down, then what happens is instead VS Code will insert j and k into the text, instead of moving me up and down.
This happens even with : commands, if I type faster or when VS Code is running slower.
To Reproduce
No specific steps, just type fast, and load lots of plugins to try and make VS Code slower.
Expected behavior
A keystroke should never be missed by VSCodeVim.
Is this VS Code's fault, the way that it allows plugins to intercept keys?
Or is VSCodeVim doing it some different/hacky way that isn't normally supported by plugin API?
(Sidenote, I like Atom's pluggability around this area. in Atom vim-mode-plus it never ever has any issues with keystrokes)
Environment (please complete the following information):
- Extension (VsCodeVim) version: latest as of today
- VSCode version: latest as of a couple weeks (but I've been having this issue for like a year since I started using VS Code)
- OS:macOS
possibly related:
- https://github.com/VSCodeVim/Vim/issues/2060 - Typing fast kills some commands
- https://github.com/VSCodeVim/Vim/issues/2108 - Typing space fast prints out a dot?
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
Start by reproducing the missed-keystroke behavior while typing quickly with a slow VS Code setup, then compare the findings with related issues 2060 and 2108. The issue provides no files, tests, or entry points; done means keystrokes are not interpreted as ordinary VS Code input during slow or busy conditions.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript, vscode
- Domain
- developer-experience, tooling
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100