VSCodeVim / VSCodeVim/Vim

Editing file over SSH remote host makes VSCode hang.

Open
#6,229 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
15.2k
Forks
1.5k
Avg merge
3d 18h
Merged PRs (30d)
6

Description

To Reproduce
Steps to reproduce the behavior:

  1. Use VSCode SSH extension to ssh into a remote host
  2. Edit a large .c file. Make sure Vim extension is enabled
  3. Try to indent a line with 'SHIFT' + '='
  4. Wait 5-10 minutes as it loads.

VSCodeVim version: 1.18.9

Stack trace
TypeError: Failed to handle key==. Cannot read property 'document' of undefined
	at Function.getFirstNonWhitespaceCharOnLine (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:758048)
	at R.run (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:524406)
	at runMicrotasks (<anonymous>)
	at processTicksAndRejections (internal/process/task_queues.js:97:5)
	at async F.executeOperator (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:713521)
	at async F.runAction (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:708540)
	at async F.handleKeyAsAnAction (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:707179)
	at async F.handleKeyEvent (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:704015)
	at async Object.promise (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:350696)
	at async Object.runTasks (/Users/ridhwaan/.vscode/extensions/vscodevim.vim-1.18.9/out/extension.js:2:754577)

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue with the VSCode SSH extension, a large .c file, Vim enabled, and Shift+=. Start from the stack trace in out/extension.js, especially getFirstNonWhitespaceCharOnLine and executeOperator, then trace back to their source implementation. Done means indentation completes without the multi-minute hang or the document TypeError.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
devtools
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.