VSCodeVim / VSCodeVim/Vim

VSCodeVim makes quick suggestions slow (includes video demonstration)

Open
#4,598 1 comment 7 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Describe the bug

VSCodeVim is causing VSCode to lag behind keyboard input for up to a second when the quick suggestions would show. The lag is excruciating enough that I have disabled all quick suggestions, which is the only workaround I know of that allows me to keep using VSCodeVim.

🎞Complete reproduction video
https://drive.google.com/open?id=1IMFV1Uetsecz0adiB_2kQ2nQf5i3Fveg

To Reproduce
Steps to reproduce the behavior:

  • Start VSCode with no extensions enabled
  • Ensure that you have the following in your settings.json:
    "editor.quickSuggestions": {
        "other": true,
        "comments": true,
        "strings": true
    }
  • Create a TypeScript project
  • Install the aws-sdk package in the project (it has a lot of type defs)
  • Create a .ts file in the project
  • Type import AWS from 'aws-sdk' into the file.
  • Below that, begin typing const s3 = new AWS.S3()
    • you should notice no lag in keyboard input while typing
  • Enable VSCodeVim
  • Backspace and retype the AWS.S3 portion of the line
    • you should notice significantly more lag in keyboard input
    • try a few times if you don't immediately notice lag
  • Now disable quick suggestions in your settings.json:
    "editor.quickSuggestions": {
        "other": false,
        "comments": false,
        "strings": false
    }
  • Backspace and retype the AWS.S3 portion of the line again
    • now there's no more lag

Expected behavior
VSCodeVim causes no lag in keyboard responsiveness, even when quick suggestions are turned on.

Environment (please complete the following information):

  • Extension (VsCodeVim) version: 1.13.0
  • VSCode version: 1.40.0
  • OS: macOS 10.15.1 (19B88)

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

Start by reproducing the issue with the settings.json quickSuggestions configuration, the TypeScript project, and the aws-sdk package described above. Compare typing AWS.S3 with VSCodeVim enabled and disabled, then verify that quick suggestions remain enabled without keyboard lag when the issue is fixed.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
devtools, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 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.