ReferenceVS Code

Essential Keyboard Shortcuts

Navigation, editing, debugging, and shortcut troubleshooting on Windows, Linux, and macOS.

Updated Verified SourceEdit this page

Learn actions first

Start with Command Palette, Quick Open, definition/references, Rename, and Quick Fix. Practice following a call path and completing a small change. Shortcuts do not install extensions: language actions such as F12 and F2 require a working language service.

Defaults by operating system

Checked on 2026-09-06 with the default US keyboard layout. An arrow means a chord: press the first combination, then the second. Function keys on macOS may require Fn. Linux differs from Windows for Peek Definition, Go Back, and Format Document.

CommandWindowsLinuxmacOS
Command PaletteCtrl+Shift+PCtrl+Shift+PCmd+Shift+P
Quick OpenCtrl+PCtrl+PCmd+P
SearchCtrl+Shift+FCtrl+Shift+FCmd+Shift+F
Go to Symbol in EditorCtrl+Shift+OCtrl+Shift+OCmd+Shift+O
Go to Symbol in WorkspaceCtrl+TCtrl+TCmd+T
Go to DefinitionF12F12F12
Peek DefinitionAlt+F12Ctrl+Shift+F10Option+F12
Go to ReferencesShift+F12Shift+F12Shift+F12
Go BackAlt+LeftCtrl+Alt+-Ctrl+-
Rename SymbolF2F2F2
Quick FixCtrl+.Ctrl+.Cmd+.
Go to Next Error or WarningF8F8F8
Format DocumentShift+Alt+FCtrl+Shift+IShift+Option+F
Move Line Up/DownAlt+Up/DownAlt+Up/DownOption+Up/Down
Add Selection to Next Find MatchCtrl+DCtrl+DCmd+D
Toggle Line CommentCtrl+/Ctrl+/Cmd+/
ProblemsCtrl+Shift+MCtrl+Shift+MCmd+Shift+M
Toggle Integrated TerminalCtrl+BacktickCtrl+BacktickCtrl+Backtick
Keyboard ShortcutsCtrl+K → Ctrl+SCtrl+K → Ctrl+SCmd+K → Cmd+S
Toggle BreakpointF9F9F9
Start/Continue DebuggingF5F5F5
Step OverF10F10F10
Step IntoF11F11F11
Step OutShift+F11Shift+F11Shift+F11
Stop DebuggingShift+F5Shift+F5Shift+F5

Sources: command reference, Windows PDF, Linux PDF, macOS PDF.

Diagnose a shortcut

Find the command in Keyboard Shortcuts, record the pressed keys, and inspect competing bindings and their when conditions. Terminal focus, the OS, or an input method can change which action receives a key. Use Developer: Toggle Keyboard Shortcuts Troubleshooting to inspect dispatch, then turn logging off. Keybinding troubleshooting

With an IntelliJ or Vim keymap, prefer the current Keyboard Shortcuts display over this table. Keep personal bindings in your Profile.

Five-minute exercise

  1. Append :42 to an actual filename in Quick Open.
  2. Visit a function definition and its references, then navigate back.
  3. Rename it with F2 and run tests. Ctrl+D selects matching text; it does not replace symbol-aware Rename.
  4. Set a breakpoint and try F5, F10, F11, and Shift+F11 while watching variables. Practice on a function call; debugger settings may skip asynchronous or external code.
  5. Format the document and inspect the diff. Formatting invokes the selected provider, not type checking or every lint rule.

Start language-specific tests, test debugging, and import organization through extension commands or CodeLens. They do not share a universal default shortcut. Continue with extensions and the navigation exercise.