Remapping ESC in insert mode with CR or Space does work via settings
See original GitHub issueIs this a BUG REPORT or FEATURE REQUEST? (choose one): BUG REPORT
What happened: Remapping to ESC does not work at all. This includes the solution posted in the README and will all other extensions disabled. I have no fucking clue what’s going on.
I’ve been going off of #1908 and #2411 as some general guidelines to trying to solve the issue. Firstly, as previously mentioned, I tried the solution presented in the README:
"vim.insertModeKeyBindings": [
{
"before": ["j", "j"],
"after": ["<Esc>"]
}
]
When I’m in insert mode and press <kbd>j</kbd><kbd>j</kbd> it simply types out “jj”. Honestly, that’s not that surprising to me. I have no idea why you’d want this anyways (I’m probably using it wrong honestly).
I’ve traded out the "before"
sequence for ["j","j"]
, ["<S-Space>"]
, and ["<S-CR>"]
,
I’ve traded out the "after"
for the "commands"
equivalent ("extension.vim_escape"
).
I’ve tried out "vim.insertModeKeyBindings"
for "vim.insertModeKeyBindingsNonRecursive"
None of these work. Again, the only extension enabled is Vim. And it doesn’t do anything
What did you expect to happen: I expected to type <kbd>j</kbd><kbd>j</kbd> or whatever key combination I’ve chosen to escape insert mode while I’m in insert mode.
How to reproduce it (as minimally and precisely as possible):
- Put the before mentioned solution from the README into
setting.json
- Go to a document (python document in my case)
- Press <kbd>i</kbd> to go to insert mode or <kbd>A</kbd> to go append a line (still brings you to insert mode)
- Type some giberish
- Press <kbd>j</kbd><kbd>j</kbd> on my keyboard quickly
- I see “jj” typed out on the screen
- Try all the combinations, repeat steps 2-6
Environment:
- Extension (VsCodeVim) version: 0.11.5
- VSCode version: 1.22.2
- OS version: Windows 8.1 (unfortunately)
~Note: I’m using code
for keys I physically press and “quotes” for what comes up on screen. So I press the j
key and the letter “j” comes up on screen.~ TIL <kbd>[keyboard text]</kbd>
is a thing
Issue Analytics
- State:
- Created 5 years ago
- Comments:6 (3 by maintainers)
Top GitHub Comments
A way I just found around it is to do a keyboard mapping of <kbd>Shift</kbd>+<kbd>Enter</kbd> in normal VS Code keyboard maps:
Probably not ideal, but it doesn’t appear to interfere with anything.
Mis-read this original issue. The remapping example works for me…
The
<Shift>
are a little weird. We support remapping of shift + character which in simplified English terms means, the capital form of that character (ie. you can remap “A”, “B”, etc). This extension does not bind to a <Shift>+ Carriage Return/Alt/Tab – we do support shift+backspace (https://github.com/VSCodeVim/Vim/blob/master/package.json#L290) though. What this means is if you press these keycombos, vscode doesn’t pass it along to the extension and therefore we know nothing about it.Closing this as a dupe of https://github.com/VSCodeVim/Vim/issues/1908