Skip to content

Instantly share code, notes, and snippets.

@espenbjorkeng
Last active November 10, 2024 15:09
Show Gist options
  • Save espenbjorkeng/484871484d4bf13ce23d8d115e2e8ef5 to your computer and use it in GitHub Desktop.
Save espenbjorkeng/484871484d4bf13ce23d8d115e2e8ef5 to your computer and use it in GitHub Desktop.
// vscode-keybindings for navigation with I/J/K/L and additional functionality with surrounding characters
// Place your key bindings in this file to overwrite the defaults
// ALT + I/J/K/L: up/left/down/right
// ALT + SHIFT + I/J/K/L: mark text up/left/down/right
// CTRL + J/L: send cursor to start/end of line
// CTRL + ALT + J/L: send cursor to start/end of word
// CTRL + ALT + U/O: send cursor to "wordPartLeft"/"wordPartRight"
// CTRL + ALT + SHIFT + U/O: mark from cursor to "wordPartLeft"/"wordPartRight"
// CTRL + ALT + Y: got to declaration
// CTRL + I/K: add/remove another cursor up/down
// -- IF LINEJUMPER IS INSTALLED -- //
// CTRL + ALT + I/K: move cursor 10 lines up/down
// CTRL + ALT + SHIFT + I/K: mark 10 lines up/down
[
{
"key": "ctrl+shift+i",
"command": "editor.action.moveLinesUpAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+k",
"command": "editor.action.moveLinesDownAction",
"when": "editorTextFocus"
},
{
"key": "alt+k",
"command": "cursorDown",
"when": "editorTextFocus"
},
{
"key": "alt+i",
"command": "cursorUp",
"when": "editorTextFocus"
},
{
"key": "alt+l",
"command": "cursorRight",
"when": "editorTextFocus"
},
{
"key": "alt+j",
"command": "cursorLeft",
"when": "editorTextFocus"
},
{
"key": "alt+shift+k",
"command": "cursorDownSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+i",
"command": "cursorUpSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+l",
"command": "cursorRightSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+j",
"command": "cursorLeftSelect",
"when": "editorTextFocus"
},
{
"key": "alt+ctrl+l",
"command": "cursorWordEndRight",
"when": "editorTextFocus"
},
{
"key": "alt+ctrl+j",
"command": "cursorWordStartLeft",
"when": "editorTextFocus"
},
{
"key": "alt+shift+ctrl+l",
"command": "cursorWordRightSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+ctrl+j",
"command": "cursorWordLeftSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+o",
"command": "cursorEndSelect",
"when": "editorTextFocus"
},
{
"key": "alt+shift+u",
"command": "cursorHomeSelect",
"when": "editorTextFocus"
},
{
"key": "ctrl+l",
"command": "cursorEnd",
"when": "editorTextFocus"
},
{
"key": "ctrl+j",
"command": "cursorHome",
"when": "editorTextFocus"
},
{
"key": "ctrl+alt+y",
"command": "editor.action.goToDeclaration"
},
{
"key": "ctrl+i",
"command": "cursorColumnSelectUp",
"when": "editorTextFocus"
},
{
"key": "ctrl+k",
"command": "cursorColumnSelectDown",
"when": "editorTextFocus"
},
{
"key": "alt+shift+ctrl+o",
"command": "cursorWordPartRightSelect",
"when": "textInputFocus"
},
{
"key": "alt+shift+ctrl+u",
"command": "cursorWordPartLeftSelect",
"when": "textInputFocus"
},
{
"key": "alt+ctrl+o",
"command": "cursorWordPartRight",
"when": "textInputFocus"
},
{
"key": "alt+ctrl+u",
"command": "cursorWordPartLeft",
"when": "textInputFocus"
},
{
"key": "alt+ctrl+k",
"command": "lineJumper.moveDown",
"when": "editorTextFocus"
},
{
"key": "alt+ctrl+i",
"command": "lineJumper.moveUp",
"when": "editorTextFocus"
},
{
"key": "alt+shift+ctrl+k",
"command": "lineJumper.selectDown",
"when": "editorTextFocus"
},
{
"key": "alt+shift+ctrl+i",
"command": "lineJumper.selectUp",
"when": "editorTextFocus"
}
]
@sl5net
Copy link

sl5net commented May 1, 2022

where i could find keybindings.json?
i find it in code but its read-only.
i searched it using: whereis keybindings.json without result in ubuntu OS

@espenbjorkeng
Copy link
Author

espenbjorkeng commented May 2, 2022

where i could find keybindings.json? i find it in code but its read-only. i searched it using: whereis keybindings.json without result in ubuntu OS

image

You should be able to edit the one at the top in my image, @sl5net.
Open the Command Palette from the View menu.

@sujitroy-dev
Copy link

alt+i is not working, when i click alt+i it returns me this symbol(ˆ). i have tried many times. but, it didn't working yet. Please help me.

@EryouHao
Copy link

alt+i is not working, when i click alt+i it returns me this symbol(ˆ). i have tried many times. but, it didn't working yet. Please help me.

@iamsujitroy Did you solve it please? I am experiencing the same problem.

@espenbjorkeng
Copy link
Author

alt+i is not working, when i click alt+i it returns me this symbol(ˆ). i have tried many times. but, it didn't working yet. Please help me.

@iamsujitroy Did you solve it please? I am experiencing the same problem.

Is this character something you're seeing in VS Code only, or any text editor when you press alt + i?

You could check the Keyboard Shortcuts reference (not the JSON one) to see if it's mapped to something else, and remove that mapping. Second one in this image:

image

@EryouHao
Copy link

EryouHao commented Sep 1, 2022

@espenbjorkeng I reset it again and found that it works properly now. Not sure what happened. Thanks.

@fredflev
Copy link

fredflev commented Oct 13, 2022

@espenbjorkeng I reset it again and found that it works properly now. Not sure what happened. Thanks.

Hey @ EryouHao may I know what you mean by reset here? (I am experiencing the same issue).

Is this character something you're seeing in VS Code only, or any text editor when you press alt + i?

it's the normal mapping for option + i on mac:

https://www.webnots.com/option-or-alt-key-shortcuts-to-insert-symbols-in-mac-os-x/

I guess I'll just map alt+o to up... lol

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment