| Move left |
Move left |
h |
h |
Yes |
Source |
| Move down |
Move down |
j |
j |
Yes |
Source |
| Move up |
Move up |
k |
k |
Yes |
Source |
| Move right |
Move right |
l |
l |
Yes |
Source |
| Move next word start |
Move next word start |
w |
w |
Yes |
Source |
| Move previous word start |
Move previous word start |
b |
b |
Yes |
Source |
| Move next word end |
Move next word end |
e |
e |
Yes |
Source |
| Move next WORD start |
Move next WORD start |
W |
W |
Yes |
Source |
| Move previous WORD start |
Move previous WORD start |
B |
B |
Yes |
Source |
| Move next WORD end |
Move next WORD end |
E |
E |
Yes |
Source |
| Find till next char |
Find till next char |
t |
t |
Yes |
Source |
| Find next char |
Find next char |
f |
f |
Yes |
Source |
| Find till previous char |
Find till previous char |
T |
T |
Yes |
Source |
| Find previous char |
Find previous char |
F |
F |
Yes |
Source |
| Go to line number <n> |
Go to line number <n> |
G |
G |
Yes |
Source |
| Repeat last motion ( f , t , m , [ or ] ) |
Repeat last motion ( f , t , m , [ or ] ) |
Alt+. |
Alt+. |
Yes |
Source |
| Move to the start of the line |
Move to the start of the line |
Home |
Home |
Yes |
Source |
| Move to the end of the line |
Move to the end of the line |
End |
End |
Yes |
Source |
| Move page up |
Move page up |
Ctrl+b |
Ctrl+b |
Yes |
Source |
| Move page down |
Move page down |
Ctrl+f |
Ctrl+f |
Yes |
Source |
| Move cursor and page half page up |
Move cursor and page half page up |
Ctrl+u |
Ctrl+u |
Yes |
Source |
| Move cursor and page half page down |
Move cursor and page half page down |
Ctrl+d |
Ctrl+d |
Yes |
Source |
| Jump forward on the jumplist |
Jump forward on the jumplist |
Ctrl+i |
Ctrl+i |
Yes |
Source |
| Jump backward on the jumplist |
Jump backward on the jumplist |
Ctrl+o |
Ctrl+o |
Yes |
Source |
| Save the current selection to the jumplist |
Save the current selection to the jumplist |
Ctrl+s |
Ctrl+s |
Yes |
Source |
| Replace with a character |
Replace with a character |
r |
r |
Yes |
Source |
| Replace with yanked text |
Replace with yanked text |
R |
R |
Yes |
Source |
| Switch case of the selected text |
Switch case of the selected text |
~ |
~ |
Yes |
Source |
| Set the selected text to lower case |
Set the selected text to lower case |
` |
` |
Yes |
Source |
| Set the selected text to upper case |
Set the selected text to upper case |
Alt+` |
Alt+` |
Yes |
Source |
| Insert before selection |
Insert before selection |
i |
i |
Yes |
Source |
| Insert after selection (append) |
Insert after selection (append) |
a |
a |
Yes |
Source |
| Insert at the start of the line |
Insert at the start of the line |
I |
I |
Yes |
Source |
| Insert at the end of the line |
Insert at the end of the line |
A |
A |
Yes |
Source |
| Open new line below selection |
Open new line below selection |
o |
o |
Yes |
Source |
| Open new line above selection |
Open new line above selection |
O |
O |
Yes |
Source |
| Repeat last insert |
Repeat last insert |
. |
. |
Yes |
Source |
| Undo change |
Undo change |
u |
u |
Yes |
Source |
| Redo change |
Redo change |
U |
U |
Yes |
Source |
| Move backward in history |
Move backward in history |
Alt+u |
Alt+u |
Yes |
Source |
| Move forward in history |
Move forward in history |
Alt+U |
Alt+U |
Yes |
Source |
| Yank selection |
Yank selection |
y |
y |
Yes |
Source |
| Paste after selection |
Paste after selection |
p |
p |
Yes |
Source |
| Paste before selection |
Paste before selection |
P |
P |
Yes |
Source |
| Indent selection |
Indent selection |
&+then+g+then+t+then+; |
&+then+g+then+t+then+; |
Yes |
Source |
| Unindent selection |
Unindent selection |
&+then+l+then+t+then+; |
&+then+l+then+t+then+; |
Yes |
Source |
| Format selection ( LSP ) |
Format selection ( LSP ) |
= |
= |
Yes |
Source |
| Delete selection |
Delete selection |
d |
d |
Yes |
Source |
| Delete selection, without yanking |
Delete selection, without yanking |
Alt+d |
Alt+d |
Yes |
Source |
| Change selection (delete and enter insert mode) |
Change selection (delete and enter insert mode) |
c |
c |
Yes |
Source |
| Change selection (delete and enter insert mode, without yanking) |
Change selection (delete and enter insert mode, without yanking) |
Alt+c |
Alt+c |
Yes |
Source |
| Increment object (number) under cursor |
Increment object (number) under cursor |
Ctrl+a |
Ctrl+a |
Yes |
Source |
| Decrement object (number) under cursor |
Decrement object (number) under cursor |
Ctrl+x |
Ctrl+x |
Yes |
Source |
| Start/stop macro recording to the selected register (experimental) |
Start/stop macro recording to the selected register (experimental) |
Q |
Q |
Yes |
Source |
| Play back a recorded macro from the selected register (experimental) |
Play back a recorded macro from the selected register (experimental) |
q |
q |
Yes |
Source |
| Pipe each selection through shell command, replacing with output |
Pipe each selection through shell command, replacing with output |
| |
| |
Yes |
Source |
| Pipe each selection into shell command, ignoring output |
Pipe each selection into shell command, ignoring output |
Alt+| |
Alt+| |
Yes |
Source |
| Run shell command, inserting output before each selection |
Run shell command, inserting output before each selection |
! |
! |
Yes |
Source |
| Run shell command, appending output after each selection |
Run shell command, appending output after each selection |
Alt+! |
Alt+! |
Yes |
Source |
| Pipe each selection into shell command, keep selections where command returned 0 |
Pipe each selection into shell command, keep selections where command returned 0 |
$ |
$ |
Yes |
Source |
| Select all regex matches inside selections |
Select all regex matches inside selections |
s |
s |
Yes |
Source |
| Split selection into sub selections on regex matches |
Split selection into sub selections on regex matches |
S |
S |
Yes |
Source |
| Split selection on newlines |
Split selection on newlines |
Alt+s |
Alt+s |
Yes |
Source |
| Merge selections |
Merge selections |
Alt |
Alt |
Yes |
Source |
| Merge consecutive selections |
Merge consecutive selections |
Alt+_ |
Alt+_ |
Yes |
Source |
| Align selection in columns |
Align selection in columns |
& |
& |
Yes |
Source |
| Trim whitespace from the selection |
Trim whitespace from the selection |
_ |
_ |
Yes |
Source |
| Collapse selection onto a single cursor |
Collapse selection onto a single cursor |
; |
; |
Yes |
Source |
| Flip selection cursor and anchor |
Flip selection cursor and anchor |
Alt+; |
Alt+; |
Yes |
Source |
| Ensures the selection is in forward direction |
Ensures the selection is in forward direction |
Alt+: |
Alt+: |
Yes |
Source |
| Remove the primary selection |
Remove the primary selection |
Alt |
Alt |
Yes |
Source |
| Copy selection onto the next line (Add cursor below) |
Copy selection onto the next line (Add cursor below) |
C |
C |
Yes |
Source |
| Copy selection onto the previous line (Add cursor above) |
Copy selection onto the previous line (Add cursor above) |
Alt+C |
Alt+C |
Yes |
Source |
| Rotate main selection backward |
Rotate main selection backward |
( |
( |
Yes |
Source |
| Rotate main selection forward |
Rotate main selection forward |
) |
) |
Yes |
Source |
| Rotate selection contents backward |
Rotate selection contents backward |
Alt+( |
Alt+( |
Yes |
Source |
| Rotate selection contents forward |
Rotate selection contents forward |
Alt+) |
Alt+) |
Yes |
Source |
| Select entire file |
Select entire file |
% |
% |
Yes |
Source |
| Select current line, if already selected, extend to next line |
Select current line, if already selected, extend to next line |
x |
x |
Yes |
Source |
| Extend selection to line bounds (line-wise selection) |
Extend selection to line bounds (line-wise selection) |
X |
X |
Yes |
Source |
| Shrink selection to line bounds (line-wise selection) |
Shrink selection to line bounds (line-wise selection) |
Alt+x |
Alt+x |
Yes |
Source |
| Join lines inside selection |
Join lines inside selection |
J |
J |
Yes |
Source |
| Join lines inside selection and select the inserted space |
Join lines inside selection and select the inserted space |
Alt+J |
Alt+J |
Yes |
Source |
| Keep selections matching the regex |
Keep selections matching the regex |
K |
K |
Yes |
Source |
| Remove selections matching the regex |
Remove selections matching the regex |
Alt+K |
Alt+K |
Yes |
Source |
| Comment/uncomment the selections |
Comment/uncomment the selections |
Ctrl+c |
Ctrl+c |
Yes |
Source |
| Expand selection to parent syntax node ( TS ) |
Expand selection to parent syntax node ( TS ) |
Alt+o |
Alt+o |
Yes |
Source |
| Shrink syntax tree object selection ( TS ) |
Shrink syntax tree object selection ( TS ) |
Alt+i |
Alt+i |
Yes |
Source |
| Select previous sibling node in syntax tree ( TS ) |
Select previous sibling node in syntax tree ( TS ) |
Alt+p |
Alt+p |
Yes |
Source |
| Select next sibling node in syntax tree ( TS ) |
Select next sibling node in syntax tree ( TS ) |
Alt+n |
Alt+n |
Yes |
Source |
| Select all sibling nodes in syntax tree ( TS ) |
Select all sibling nodes in syntax tree ( TS ) |
Alt+a |
Alt+a |
Yes |
Source |
| Select all children nodes in syntax tree ( TS ) |
Select all children nodes in syntax tree ( TS ) |
Alt+I |
Alt+I |
Yes |
Source |
| Move to end of parent node in syntax tree ( TS ) |
Move to end of parent node in syntax tree ( TS ) |
Alt+e |
Alt+e |
Yes |
Source |
| Move to start of parent node in syntax tree ( TS ) |
Move to start of parent node in syntax tree ( TS ) |
Alt+b |
Alt+b |
Yes |
Source |
| Search for regex pattern |
Search for regex pattern |
/ |
/ |
Yes |
Source |
| Search for previous pattern |
Search for previous pattern |
? |
? |
Yes |
Source |
| Select next search match |
Select next search match |
n |
n |
Yes |
Source |
| Select previous search match |
Select previous search match |
N |
N |
Yes |
Source |
| Use current selection as the search pattern, automatically wrapping with \b on word boundaries |
Use current selection as the search pattern, automatically wrapping with \b on word boundaries |
* |
* |
Yes |
Source |
| Use current selection as the search pattern |
Use current selection as the search pattern |
Alt+* |
Alt+* |
Yes |
Source |
| Enter select (extend) mode |
Enter select (extend) mode |
v |
v |
Yes |
Source |
| Enter goto mode |
Enter goto mode |
g |
g |
Yes |
Source |
| Enter match mode |
Enter match mode |
m |
m |
Yes |
Source |
| Enter command mode |
Enter command mode |
: |
: |
Yes |
Source |
| Enter view mode |
Enter view mode |
z |
z |
Yes |
Source |
| Enter sticky view mode |
Enter sticky view mode |
Z |
Z |
Yes |
Source |
| Enter window mode |
Enter window mode |
Ctrl+w |
Ctrl+w |
Yes |
Source |
| Enter space mode |
Enter space mode |
Space |
Space |
Yes |
Source |
| Vertically center the line |
Vertically center the line |
z |
z |
Yes |
Source |
| Align the line to the top of the screen |
Align the line to the top of the screen |
t |
t |
Yes |
Source |
| Align the line to the bottom of the screen |
Align the line to the bottom of the screen |
b |
b |
Yes |
Source |
| Align the line to the middle of the screen (horizontally) |
Align the line to the middle of the screen (horizontally) |
m |
m |
Yes |
Source |
| Scroll the view downwards |
Scroll the view downwards |
j |
j |
Yes |
Source |
| Scroll the view upwards |
Scroll the view upwards |
k |
k |
Yes |
Source |
| Go to line number <n> else start of file |
Go to line number <n> else start of file |
g |
g |
Yes |
Source |
| Go to column number <n> else start of line |
Go to column number <n> else start of line |
| |
| |
Yes |
Source |
| Go to the end of the file |
Go to the end of the file |
e |
e |
Yes |
Source |
| Go to files in the selections |
Go to files in the selections |
f |
f |
Yes |
Source |
| Go to the start of the line |
Go to the start of the line |
h |
h |
Yes |
Source |
| Go to the end of the line |
Go to the end of the line |
l |
l |
Yes |
Source |
| Go to first non-whitespace character of the line |
Go to first non-whitespace character of the line |
s |
s |
Yes |
Source |
| Go to the top of the screen |
Go to the top of the screen |
t |
t |
Yes |
Source |
| Go to the middle of the screen |
Go to the middle of the screen |
c |
c |
Yes |
Source |
| Go to the bottom of the screen |
Go to the bottom of the screen |
b |
b |
Yes |
Source |
| Go to definition ( LSP ) |
Go to definition ( LSP ) |
d |
d |
Yes |
Source |
| Go to type definition ( LSP ) |
Go to type definition ( LSP ) |
y |
y |
Yes |
Source |
| Go to references ( LSP ) |
Go to references ( LSP ) |
r |
r |
Yes |
Source |
| Go to implementation ( LSP ) |
Go to implementation ( LSP ) |
i |
i |
Yes |
Source |
| Go to the last accessed/alternate file |
Go to the last accessed/alternate file |
a |
a |
Yes |
Source |
| Go to the last modified/alternate file |
Go to the last modified/alternate file |
m |
m |
Yes |
Source |
| Go to next buffer |
Go to next buffer |
n |
n |
Yes |
Source |
| Go to previous buffer |
Go to previous buffer |
p |
p |
Yes |
Source |
| Go to last modification in current file |
Go to last modification in current file |
. |
. |
Yes |
Source |
| Move down textual (instead of visual) line |
Move down textual (instead of visual) line |
j |
j |
Yes |
Source |
| Move up textual (instead of visual) line |
Move up textual (instead of visual) line |
k |
k |
Yes |
Source |
| Show labels at each word and select the word that belongs to the entered labels |
Show labels at each word and select the word that belongs to the entered labels |
w |
w |
Yes |
Source |
| Goto matching bracket ( TS ) |
Goto matching bracket ( TS ) |
m |
m |
Yes |
Source |
| Switch to next window |
Switch to next window |
w |
w |
Yes |
Source |
| Vertical right split |
Vertical right split |
v |
v |
Yes |
Source |
| Horizontal bottom split |
Horizontal bottom split |
s |
s |
Yes |
Source |
| Go to files in the selections in horizontal splits |
Go to files in the selections in horizontal splits |
f |
f |
Yes |
Source |
| Go to files in the selections in vertical splits |
Go to files in the selections in vertical splits |
F |
F |
Yes |
Source |
| Move to left split |
Move to left split |
h |
h |
Yes |
Source |
| Move to split below |
Move to split below |
j |
j |
Yes |
Source |
| Move to split above |
Move to split above |
k |
k |
Yes |
Source |
| Move to right split |
Move to right split |
l |
l |
Yes |
Source |
| Close current window |
Close current window |
q |
q |
Yes |
Source |
| Only keep the current window, closing all the others |
Only keep the current window, closing all the others |
o |
o |
Yes |
Source |
| Swap window to the left |
Swap window to the left |
H |
H |
Yes |
Source |
| Swap window downwards |
Swap window downwards |
J |
J |
Yes |
Source |
| Swap window upwards |
Swap window upwards |
K |
K |
Yes |
Source |
| Swap window to the right |
Swap window to the right |
L |
L |
Yes |
Source |
| Open file picker at LSP workspace root |
Open file picker at LSP workspace root |
f |
f |
Yes |
Source |
| Open file picker at current working directory |
Open file picker at current working directory |
F |
F |
Yes |
Source |
| Open buffer picker |
Open buffer picker |
b |
b |
Yes |
Source |
| Open jumplist picker |
Open jumplist picker |
j |
j |
Yes |
Source |
| Open changed file picker |
Open changed file picker |
g |
g |
Yes |
Source |
| Debug (experimental) |
Debug (experimental) |
G |
G |
Yes |
Source |
| Show documentation for item under cursor in a popup ( LSP ) |
Show documentation for item under cursor in a popup ( LSP ) |
k |
k |
Yes |
Source |
| Open document symbol picker ( LSP ) |
Open document symbol picker ( LSP ) |
s |
s |
Yes |
Source |
| Open workspace symbol picker ( LSP ) |
Open workspace symbol picker ( LSP ) |
S |
S |
Yes |
Source |
| Open document diagnostics picker ( LSP ) |
Open document diagnostics picker ( LSP ) |
d |
d |
Yes |
Source |
| Open workspace diagnostics picker ( LSP ) |
Open workspace diagnostics picker ( LSP ) |
D |
D |
Yes |
Source |
| Rename symbol ( LSP ) |
Rename symbol ( LSP ) |
r |
r |
Yes |
Source |
| Apply code action ( LSP ) |
Apply code action ( LSP ) |
a |
a |
Yes |
Source |
| Select symbol references ( LSP ) |
Select symbol references ( LSP ) |
h |
h |
Yes |
Source |
| Open last fuzzy picker |
Open last fuzzy picker |
' |
' |
Yes |
Source |
| Enter window mode |
Enter window mode |
w |
w |
Yes |
Source |
| Comment/uncomment selections |
Comment/uncomment selections |
c |
c |
Yes |
Source |
| Block comment/uncomment selections |
Block comment/uncomment selections |
C |
C |
Yes |
Source |
| Line comment/uncomment selections |
Line comment/uncomment selections |
Alt+c |
Alt+c |
Yes |
Source |
| Paste system clipboard after selections |
Paste system clipboard after selections |
p |
p |
Yes |
Source |
| Paste system clipboard before selections |
Paste system clipboard before selections |
P |
P |
Yes |
Source |
| Yank selections to clipboard |
Yank selections to clipboard |
y |
y |
Yes |
Source |
| Yank main selection to clipboard |
Yank main selection to clipboard |
Y |
Y |
Yes |
Source |
| Replace selections by clipboard contents |
Replace selections by clipboard contents |
R |
R |
Yes |
Source |
| Global search in workspace folder |
Global search in workspace folder |
/ |
/ |
Yes |
Source |
| Open command palette |
Open command palette |
? |
? |
Yes |
Source |
| Scroll up |
Scroll up |
Ctrl+u |
Ctrl+u |
Yes |
Source |
| Scroll down |
Scroll down |
Ctrl+d |
Ctrl+d |
Yes |
Source |
| Previous entry |
Previous entry |
Shift+Tab |
Shift+Tab |
Yes |
Source |
| Next entry |
Next entry |
Tab |
Tab |
Yes |
Source |
| Close menu and accept completion |
Close menu and accept completion |
Enter |
Enter |
Yes |
Source |
| Close menu and reject completion |
Close menu and reject completion |
Ctrl+c |
Ctrl+c |
Yes |
Source |
| Previous signature |
Previous signature |
Alt+p |
Alt+p |
Yes |
Source |
| Next signature |
Next signature |
Alt+n |
Alt+n |
Yes |
Source |
| Go to next diagnostic ( LSP ) |
Go to next diagnostic ( LSP ) |
]+then+d |
]+then+d |
Yes |
Source |
| Go to previous diagnostic ( LSP ) |
Go to previous diagnostic ( LSP ) |
[+then+d |
[+then+d |
Yes |
Source |
| Go to last diagnostic in document ( LSP ) |
Go to last diagnostic in document ( LSP ) |
]+then+D |
]+then+D |
Yes |
Source |
| Go to first diagnostic in document ( LSP ) |
Go to first diagnostic in document ( LSP ) |
[+then+D |
[+then+D |
Yes |
Source |
| Go to next function ( TS ) |
Go to next function ( TS ) |
]+then+f |
]+then+f |
Yes |
Source |
| Go to previous function ( TS ) |
Go to previous function ( TS ) |
[+then+f |
[+then+f |
Yes |
Source |
| Go to next type definition ( TS ) |
Go to next type definition ( TS ) |
]+then+t |
]+then+t |
Yes |
Source |
| Go to previous type definition ( TS ) |
Go to previous type definition ( TS ) |
[+then+t |
[+then+t |
Yes |
Source |
| Go to next argument/parameter ( TS ) |
Go to next argument/parameter ( TS ) |
]+then+a |
]+then+a |
Yes |
Source |
| Go to previous argument/parameter ( TS ) |
Go to previous argument/parameter ( TS ) |
[+then+a |
[+then+a |
Yes |
Source |
| Go to next comment ( TS ) |
Go to next comment ( TS ) |
]+then+c |
]+then+c |
Yes |
Source |
| Go to previous comment ( TS ) |
Go to previous comment ( TS ) |
[+then+c |
[+then+c |
Yes |
Source |
| Go to next test ( TS ) |
Go to next test ( TS ) |
]+then+T |
]+then+T |
Yes |
Source |
| Go to previous test ( TS ) |
Go to previous test ( TS ) |
[+then+T |
[+then+T |
Yes |
Source |
| Go to next paragraph |
Go to next paragraph |
]+then+p |
]+then+p |
Yes |
Source |
| Go to previous paragraph |
Go to previous paragraph |
[+then+p |
[+then+p |
Yes |
Source |
| Go to next change |
Go to next change |
]+then+g |
]+then+g |
Yes |
Source |
| Go to previous change |
Go to previous change |
[+then+g |
[+then+g |
Yes |
Source |
| Go to last change |
Go to last change |
]+then+G |
]+then+G |
Yes |
Source |
| Go to first change |
Go to first change |
[+then+G |
[+then+G |
Yes |
Source |
| Add newline below |
Add newline below |
]+then+S+then+p+then+a+then+c+then+e |
]+then+S+then+p+then+a+then+c+then+e |
Yes |
Source |
| Add newline above |
Add newline above |
[+then+S+then+p+then+a+then+c+then+e |
[+then+S+then+p+then+a+then+c+then+e |
Yes |
Source |