vimvisual-studio-codevim-plugin

How to use vim (key-bindings) with Visual Studio Code vim extension


I just started using Visual Studio Code and think it's really great. Also installed the vim extension, but I'm struggling with mapping esc to a another key.

Normally I have this:

:imap jj <Esc>

And I can see that VS Code has a keybindings.json file. I tried this:

[{
    "key": "jj",
    "command": "vim.Esc",
    "when": "editorTextFocus"
}]

Also there is a settings.json file, so I tried:

{
  "vim.keyboardLayout": "en-US (QWERTY)",
    "vim.insertModeKeyBindings": {
        "j": "vim.Esc"
    }
}

Also did not work. So does anyone know how to use the a vim extension with VS Code where I can map jj to Esc or something else to Esc perhaps?


Solution

  • Add the following to settings.json (open the Command Pallete and search for "User Settings"):

    "vim.insertModeKeyBindings": [
         {
             "before": ["j", "j"],
             "after": ["<esc>"]
         }
    ]
    

    That should do it.