VSCodeVim / VSCodeVim/Vim

Moving up and down inside an auto-completion box through Vim keys (j and k) instead of arrow keys.

Open
#2,382 14 comments 2 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

FEATURE REQUEST:
A feature which will make life inside the editor, of every VSCodeVim user, 100 times easier!

What happens:
When we start typing some letters and intellisense opens the auto-completion box, if the choices are more than one and our required option isn't under selection, we have either to type more letters to filter further and have our required member selected or press arrow keys to choose the required member manually and then press tab to insert it.
Sometimes we even lose the choice of typing more characters to further filter. This kind of situation occurs in cases when we have a snippet and we have already completed the prefix for that snippet. For example the following snapshot.
01a

In the example above I have already completed typing the prefix (la) for an embedded elixir snippet, but as another member (Emmet Abbreviation for label tag) is above the required member, so I have to press the down arrow key to choose the required member.

(Important) Now if I press Escape key, it will discard the auto-completion options altogether and will take the editor (from the insert mode) to the normal mode.
02

What do I wish to happen:
I wish that inside the auto-completion box, while being in the above situation (more than one members, and the required member isn't under selection), if I press Escape key, the editor don't go back to the normal mode, but it temporarily map j and k keys to to down and up arrow keys respectively, until I get out of the auto-completion box by either pressing tab to insert a member, or press Escape again to get out of the auto-completion box myself.

Thank You so much for this awesome plugin!

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

No files or tests are named in the issue. Start by tracing VSCodeVim's handling of completion-box keys and Escape in insert mode; done means j and k move the completion selection after the first Escape, while Tab inserts and a second Escape exits the completion box.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
developer-experience, tooling
Issue type
Feature
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.