Basic commands in Normal mode keep getting appended to the "Pending Command Keys"
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
Seemingly at random, my extension enters a state where I cannot enter commands normally. Instead, they are added to the "pending command keys" list. This list only clears if I tap my escape key twice. Additionally, I cannot enter insert mode unless the list is clear. The only way that I've found to fix this is to restart the extension or to restart VSCode.
To Reproduce
Unfortunately I cannot consistently reproduce this behavior.
Expected behavior
I expect for basic commands like motions not to be added to this command list.
Screenshots
If applicable, add screenshots to help explain your problem.
If remapping-related, please attach log output: https://github.com/VSCodeVim/Vim#debugging-remappings.
Video (See to the left of Rojo on the status bar): https://github.com/user-attachments/assets/c0e8b0a3-fa60-4009-8d7a-1c3c1e9d6539
Environment (please complete the following information):
-
Extension (VsCodeVim) version: 1.27.3
-
VSCode version: 1.92.1
-
OS: Windows 11
Additional context
I have not changed any settings or remapped anything.
I have caps lock bound to Esc with an autohotkey script.
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 at the pending command keys handling and reproduce the issue with VSCode Vim 1.27.3 on Windows 11, using the linked video and the reported Caps Lock-to-Escape AutoHotkey setup as context. Investigate why basic motions are appended and verify that commands and insert mode work without requiring two Escape presses; no file or test is named in the report.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript, vscode
- Domain
- devtools
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100