Note:
Ctrl
is used for Windows/Linux.
Cmd
(⌘) is used for macOS.
Alt
is used for Windows/Linux.
Option
(⌥) is used for macOS.
- Many commands can be accessed via the Command Palette:
Ctrl+Shift+P
(Win/Linux) | Cmd+Shift+P
(macOS).
General & Essential
Action |
Windows/Linux |
macOS |
Show Command Palette |
Ctrl+Shift+P , F1 |
Cmd+Shift+P , F1 |
Quick Open, Go to File |
Ctrl+P |
Cmd+P |
Show User Settings |
Ctrl+, |
Cmd+, |
Show Keyboard Shortcuts |
Ctrl+K Ctrl+S |
Cmd+K Cmd+S |
New Window/Instance |
Ctrl+Shift+N |
Cmd+Shift+N |
Close Window/Instance |
Ctrl+Shift+W |
Cmd+Shift+W |
Toggle Full Screen |
F11 |
Ctrl+Cmd+F |
Toggle Zen Mode |
Ctrl+K Z |
Cmd+K Z |
Basic Editing
Action |
Windows/Linux |
macOS |
Cut line |
Ctrl+X |
Cmd+X |
Copy line |
Ctrl+C |
Cmd+C |
Paste |
Ctrl+V |
Cmd+V |
Undo |
Ctrl+Z |
Cmd+Z |
Redo |
Ctrl+Y / Ctrl+Shift+Z |
Cmd+Shift+Z |
Select All |
Ctrl+A |
Cmd+A |
Select Line |
Ctrl+L |
Cmd+L |
Delete Line |
Ctrl+Shift+K |
Cmd+Shift+K |
Insert Line Below |
Ctrl+Enter |
Cmd+Enter |
Insert Line Above |
Ctrl+Shift+Enter |
Cmd+Shift+Enter |
Move Line Up |
Alt+Up Arrow |
Option+Up Arrow |
Move Line Down |
Alt+Down Arrow |
Option+Down Arrow |
Duplicate Line Up |
Shift+Alt+Up Arrow |
Shift+Option+Up Arrow |
Duplicate Line Down |
Shift+Alt+Down Arrow |
Shift+Option+Down Arrow |
Indent Line |
Ctrl+] |
Cmd+] |
Outdent Line |
Ctrl+[ |
Cmd+[ |
Go to Beginning of Line |
Home |
Cmd+Left Arrow , Home |
Go to End of Line |
End |
Cmd+Right Arrow , End |
Go to Beginning of File |
Ctrl+Home |
Cmd+Up Arrow , Cmd+Home |
Go to End of File |
Ctrl+End |
Cmd+Down Arrow , Cmd+End |
Code Editing & Formatting
Action |
Windows/Linux |
macOS |
Toggle Line Comment |
Ctrl+/ |
Cmd+/ |
Toggle Block Comment |
Shift+Alt+A |
Shift+Option+A |
Format Document |
Shift+Alt+F |
Shift+Option+F |
Format Selection |
Ctrl+K Ctrl+F |
Cmd+K Cmd+F |
Trigger Suggestion |
Ctrl+Space |
Ctrl+Space , Option+Esc |
Trigger Parameter Hints |
Ctrl+Shift+Space |
Cmd+Shift+Space |
Rename Symbol |
F2 |
F2 |
Quick Fix / Refactor |
Ctrl+. |
Cmd+. |
Go to Definition |
F12 , Ctrl+Click |
F12 , Cmd+Click |
Peek Definition |
Alt+F12 |
Option+F12 |
Go to References |
Shift+F12 |
Shift+F12 |
Navigation
Action |
Windows/Linux |
macOS |
Go to Symbol in File... |
Ctrl+Shift+O |
Cmd+Shift+O |
Go to Symbol in Workspace... |
Ctrl+T |
Cmd+T |
Go to Line/Column... |
Ctrl+G |
Ctrl+G |
Go Back (Cursor Position) |
Alt+Left Arrow |
Ctrl+- or Cmd+[ |
Go Forward (Cursor Position) |
Alt+Right Arrow |
Ctrl+Shift+- or Cmd+] |
Switch Editor Tabs |
Ctrl+Tab , Ctrl+PageDown |
Ctrl+Tab , Cmd+Option+Right Arrow |
Switch Editor Tabs (Reverse) |
Ctrl+Shift+Tab , Ctrl+PageUp |
Ctrl+Shift+Tab , Cmd+Option+Left Arrow |
Go to Next Error/Warning |
F8 |
F8 |
Go to Previous Error/Warning |
Shift+F8 |
Shift+F8 |
Search & Replace
Action |
Windows/Linux |
macOS |
Find |
Ctrl+F |
Cmd+F |
Replace |
Ctrl+H |
Cmd+Option+F |
Find Next |
F3 |
Cmd+G |
Find Previous |
Shift+F3 |
Cmd+Shift+G |
Select Next Find Match |
Ctrl+D |
Cmd+D |
Select All Find Matches |
Ctrl+Shift+L |
Cmd+Shift+L |
Find in Files |
Ctrl+Shift+F |
Cmd+Shift+F |
Replace in Files |
Ctrl+Shift+H |
Cmd+Shift+H |
Multi-Cursor & Selection
Action |
Windows/Linux |
macOS |
Insert Cursor Above |
Ctrl+Alt+Up Arrow |
Cmd+Option+Up Arrow |
Insert Cursor Below |
Ctrl+Alt+Down Arrow |
Cmd+Option+Down Arrow |
Add Selection To Next Find Match |
Ctrl+D |
Cmd+D |
Undo Last Cursor Operation |
Ctrl+U |
Cmd+U |
Column (Box) Selection |
Shift+Alt+Mouse Drag |
Shift+Option+Mouse Drag |
Column Select w/ Keyboard |
Ctrl+Shift+Alt+Arrows |
Cmd+Shift+Option+Arrows |
File Management
Action |
Windows/Linux |
macOS |
New File |
Ctrl+N |
Cmd+N |
Open File... |
Ctrl+O |
Cmd+O |
Save |
Ctrl+S |
Cmd+S |
Save As... |
Ctrl+Shift+S |
Cmd+Shift+S |
Save All |
Ctrl+K S |
Cmd+Option+S |
Close Editor |
Ctrl+W , Ctrl+F4 |
Cmd+W |
Reopen Closed Editor |
Ctrl+Shift+T |
Cmd+Shift+T |
Show Explorer |
Ctrl+Shift+E |
Cmd+Shift+E |
Reveal Active File |
Ctrl+K R |
Cmd+K R |
Display & Window Management
Action |
Windows/Linux |
macOS |
Toggle Sidebar Visibility |
Ctrl+B |
Cmd+B |
Toggle Panel Visibility |
Ctrl+J |
Cmd+J |
Split Editor |
Ctrl+\ |
Cmd+\ |
Focus into Editor Group 1/2/3 |
Ctrl+1/2/3 |
Cmd+1/2/3 |
Move Editor into Next Group |
Ctrl+K Ctrl+Right Arrow |
Cmd+K Cmd+Right Arrow |
Move Editor into Prev Group |
Ctrl+K Ctrl+Left Arrow |
Cmd+K Cmd+Left Arrow |
Integrated Terminal
Action |
Windows/Linux |
macOS |
Show Integrated Terminal |
`Ctrl+`` (backtick) |
`Ctrl+`` (backtick) |
Create New Terminal |
`Ctrl+Shift+`` |
`Cmd+Shift+`` |
Scroll Up/Down |
Ctrl+Up/Down |
Cmd+Up/Down |
Scroll Page Up/Down |
Shift+PageUp/PageDown |
Shift+PageUp/PageDown |
Clear Terminal |
Ctrl+K (often) or type clear |
Cmd+K or type clear |
Debugging
Action |
Windows/Linux |
macOS |
Toggle Breakpoint |
F9 |
F9 |
Start/Continue |
F5 |
F5 |
Stop |
Shift+F5 |
Shift+F5 |
Step Over |
F10 |
F10 |
Step Into |
F11 |
F11 |
Step Out |
Shift+F11 |
Shift+F11 |
Show Debug Console |
Ctrl+Shift+Y |
Cmd+Shift+Y |
Command Pallete
Cmd + P
or Ctrl + P
: Open command pallete
>
: commands
@
(or Cmd + Shift + .
): scroll to symbol
#
global symbol search
:
(or Control + G
): go to line
Frequently Used Shortcuts
Shift + left/right arrow
: select text
option + left/right arrow
: got to previous/next word
Cmd + D
: select the word. Press multiple times to select multiple same word.
Cmd + L
: select the line
option/Alt + click
: set multiple cursors
option/Alt + up/down arrow
: move the line up or down
option/ALt + Shift + up/down arrow
: copy the line up or down
Cmd + /
: toggle comment
option + shift + o
: auto sort imports
FAQ
How to modify the key bindings?
You can customize almost all of these shortcuts via File > Preferences > Keyboard Shortcuts
(Code > Preferences > Keyboard Shortcuts
on macOS) or by opening the Command Palette (Ctrl+Shift+P
| Cmd+Shift+P
) and typing Keyboard Shortcuts
.
How to start VS Code from the commandline?
From the commandline, open from the current location:
$ code .