VSCodeVim / VSCodeVim/Vim

Some key bindings do not work....

Open
#2,971 5 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

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

Description

Speciffically: can't exit insert mode with a binding.

To Reproduce
Steps to reproduce the behavior:

  1. Add to Settings:
    "vim.insertModeKeyBindings": [
        {
            "before": ["<Up>"],
            "after": [ "<Esc>", "<Up>" ]
        },
        {
            "before": ["<Down>"],
            "after": [ "<Esc>", "<Down>" ]
        },
    ],
  1. Open some file and enter insert mode (for example with i or o)
  2. press Up/Down
  3. The cursor moves up/down without exiting insert mode.

Expected behavior
Exit from insert mode is expected.

Environment:

  • Extension Name: vim
  • Extension Version: 0.16.0
  • OS Version: Windows_NT x64 10.0.17134
  • VSCode version: 1.26.1

Additional context
This binding used to work, but I missed the exact version it broke on -- I use VSCode for very specific tasks and not every day.

Thanks!

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 shown vim.insertModeKeyBindings configuration, then trace the insert-mode key handling entry point. Verify the fix by confirming that Up and Down trigger the configured Escape sequence and leave insert mode while preserving movement.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
tooling
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.