Comparison · Updated
Cursor vs VS Code Keyboard Shortcuts: Every Key Compared
Cursor runs on VS Code but adds keys of its own, and some reuse combinations VS Code already uses. Every documented shortcut of both, side by side, for Mac and Windows.
Cursor is a fork of Visual Studio Code: the editor, the command palette and the default keymap come from VS Code. On top of them, Cursor documents its own shortcuts for chat, inline edit, Tab completions and the terminal prompt bar.
Every documented key, side by side
Each row is a key combination. "Different action" means both apps document that combination for something different; the Cursor column shows where Cursor lists it (Chat, Inline Edit…).
- 2Same key, same action
- 8Same key, different action
- 22Cursor only
- 42Visual Studio Code only
| Key | | | Difference |
|---|---|---|---|
| ⌘⇧K | Delete Line | Toggle Input FocusInline Edit · Add Selection to EditContext | Different action |
| ⌘] | Indent Line | Next ChatChat | Different action |
| ⌘[ | Outdent Line | Previous ChatChat | Different action |
| ⌘/ | Toggle Line Comment | Loop Between AI ModelsGeneral | Different action |
| ⌘⇧L | Select All Occurrences | Add Selected Code as ContextChat · Add Selection to ChatContext | Different action |
| ⌘. | Quick Fix | Mode MenuGeneral | Different action |
| ⌘N | New File | New ChatChat | Different action |
| ⌘W | Close Editor | Close ChatChat | Different action |
| ⌘⇧P | Show Command Palette | Command PaletteGeneral | Same |
| ⌘, | Open Settings | General SettingsGeneral | Same |
| ⌘I | — | Toggle SidepanelGeneral | |
| ⌘L | — | Toggle Sidepanel (alternate binding)General · Add Selection to New ChatContext | |
| ⌘E | — | Toggle Agent LayoutGeneral | |
| ⌘⇧J | — | Cursor SettingsGeneral | |
| ⌘⇧␣ | — | Toggle Voice ModeGeneral | |
| ⌘Rthen⌘S | — | Open Keyboard ShortcutsGeneral | |
| ↵ | — | Queue MessageChat · Submit Inline EditInline Edit | |
| ⌘↵ | — | Force Send MessageChat · Accept All ChangesChat · Search Codebase in ChatContext · Run Generated CommandTerminal | |
| ⌘⇧⌫ | — | Cancel GenerationChat · Reject All ChangesChat · Cancel Inline EditInline Edit | |
| ⌘V | — | Add Clipboard as ContextChat | |
| ⌘⇧V | — | Add Clipboard to Input BoxChat | |
| ⇥ | — | Cycle to Next MessageChat · Accept Tab SuggestionTab | |
| ⇧⇥ | — | Rotate Between Agent ModesChat | |
| ⌘⌥/ | — | Model ToggleChat | |
| ⌘T | — | New Chat TabChat | |
| ⎋ | — | Unfocus FieldChat · Accept CommandTerminal | |
| ⌘K | — | Open Inline EditInline Edit · Open Terminal Prompt BarTerminal | |
| ⌥↵ | — | Ask Quick QuestionInline Edit | |
| / | — | Shortcut CommandsContext | |
| ⌘→ | — | Accept Next Word of SuggestionContext · Accept Next WordTab | |
| ⌘Cthen⌘V | — | Add Copied Reference Code as ContextContext | |
| ⌘Cthen⌘⇧V | — | Add Copied Code as Text ContextContext | |
| ⌘P | Quick Open File | — | |
| ⌘Kthen⌘S | Open Keyboard Shortcuts | — | |
| ⌘X | Cut Line | — | |
| ⌘C | Copy Line | — | |
| ⌥↑ | Move Line Up | — | |
| ⌥↓ | Move Line Down | — | |
| ⇧⌥↑ | Copy Line Up | — | |
| ⇧⌥↓ | Copy Line Down | — | |
| ⇧⌥A | Toggle Block Comment | — | |
| ⇧⌥F | Format Document | — | |
| ⌃G | Go to Line | — | |
| ⌘⇧O | Go to Symbol | — | |
| F12 | Go to Definition | — | |
| ⌥F12 | Peek Definition | — | |
| ⌃− | Go Back | — | |
| ⌃⇧− | Go Forward | — | |
| ⌘⇧\ | Jump to Matching Bracket | — | |
| ⌘F | Find | — | |
| ⌥⌘F | Replace | — | |
| ⌘⇧F | Search Across Files | — | |
| ⌘⇧H | Replace Across Files | — | |
| ⌘D | Add Cursor to Next Match | — | |
| ⌥⌘↑ | Add Cursor Above | — | |
| ⌥⌘↓ | Add Cursor Below | — | |
| ⌃⇧⌘→ | Expand Selection | — | |
| ⌃⇧⌘← | Shrink Selection | — | |
| ⌃␣ | Trigger Suggestion | — | |
| F2 | Rename Symbol | — | |
| ⌘B | Toggle Sidebar | — | |
| ⌘J | Toggle Panel | — | |
| ⌘KthenZ | Toggle Zen Mode | — | |
| ⌘\ | Split Editor | — | |
| ⌘= | Zoom In | — | |
| ⌘− | Zoom Out | — | |
| ⌘S | Save | — | |
| ⌘⇧S | Save As | — | |
| ⌃` | Toggle Terminal | — | |
| ⌃⇧` | New Terminal | — | |
| F9 | Toggle Breakpoint | — | |
| F5 | Start / Continue Debugging | — | |
| F10 | Step Over | — | |
| F11 | Step Into | — |
- 2Same key, same action
- 8Same key, different action
- 22Cursor only
- 42Visual Studio Code only
| Key | | | Difference |
|---|---|---|---|
| CtrlShiftK | Delete Line | Toggle Input FocusInline Edit · Add Selection to EditContext | Different action |
| Ctrl] | Indent Line | Next ChatChat | Different action |
| Ctrl[ | Outdent Line | Previous ChatChat | Different action |
| Ctrl/ | Toggle Line Comment | Loop Between AI ModelsGeneral | Different action |
| CtrlShiftL | Select All Occurrences | Add Selected Code as ContextChat · Add Selection to ChatContext | Different action |
| Ctrl. | Quick Fix | Mode MenuGeneral | Different action |
| CtrlN | New File | New ChatChat | Different action |
| CtrlW | Close Editor | Close ChatChat | Different action |
| CtrlShiftP | Show Command Palette | Command PaletteGeneral | Same |
| Ctrl, | Open Settings | General SettingsGeneral | Same |
| CtrlI | — | Toggle SidepanelGeneral | |
| CtrlL | — | Toggle Sidepanel (alternate binding)General · Add Selection to New ChatContext | |
| CtrlE | — | Toggle Agent LayoutGeneral | |
| CtrlShiftJ | — | Cursor SettingsGeneral | |
| CtrlShiftSpace | — | Toggle Voice ModeGeneral | |
| CtrlRthenCtrlS | — | Open Keyboard ShortcutsGeneral | |
| Enter | — | Queue MessageChat · Submit Inline EditInline Edit | |
| CtrlEnter | — | Force Send MessageChat · Accept All ChangesChat · Search Codebase in ChatContext · Run Generated CommandTerminal | |
| CtrlShiftBksp | — | Cancel GenerationChat · Reject All ChangesChat · Cancel Inline EditInline Edit | |
| CtrlV | — | Add Clipboard as ContextChat | |
| CtrlShiftV | — | Add Clipboard to Input BoxChat | |
| Tab | — | Cycle to Next MessageChat · Accept Tab SuggestionTab | |
| ShiftTab | — | Rotate Between Agent ModesChat | |
| CtrlAlt/ | — | Model ToggleChat | |
| CtrlT | — | New Chat TabChat | |
| Esc | — | Unfocus FieldChat · Accept CommandTerminal | |
| CtrlK | — | Open Inline EditInline Edit · Open Terminal Prompt BarTerminal | |
| AltEnter | — | Ask Quick QuestionInline Edit | |
| / | — | Shortcut CommandsContext | |
| CtrlRIGHT | — | Accept Next Word of SuggestionContext · Accept Next WordTab | |
| CtrlCthenCtrlV | — | Add Copied Reference Code as ContextContext | |
| CtrlCthenCtrlShiftV | — | Add Copied Code as Text ContextContext | |
| CtrlP | Quick Open File | — | |
| CtrlKthenCtrlS | Open Keyboard Shortcuts | — | |
| CtrlX | Cut Line | — | |
| CtrlC | Copy Line | — | |
| AltUP | Move Line Up | — | |
| AltDOWN | Move Line Down | — | |
| ShiftAltUP | Copy Line Up | — | |
| ShiftAltDOWN | Copy Line Down | — | |
| ShiftAltA | Toggle Block Comment | — | |
| ShiftAltF | Format Document | — | |
| CtrlG | Go to Line | — | |
| CtrlShiftO | Go to Symbol | — | |
| F12 | Go to Definition | — | |
| AltF12 | Peek Definition | — | |
| AltLEFT | Go Back | — | |
| AltRIGHT | Go Forward | — | |
| CtrlShift\ | Jump to Matching Bracket | — | |
| CtrlF | Find | — | |
| CtrlH | Replace | — | |
| CtrlShiftF | Search Across Files | — | |
| CtrlShiftH | Replace Across Files | — | |
| CtrlD | Add Cursor to Next Match | — | |
| CtrlAltUP | Add Cursor Above | — | |
| CtrlAltDOWN | Add Cursor Below | — | |
| ShiftAltRIGHT | Expand Selection | — | |
| ShiftAltLEFT | Shrink Selection | — | |
| CtrlSpace | Trigger Suggestion | — | |
| F2 | Rename Symbol | — | |
| CtrlB | Toggle Sidebar | — | |
| CtrlJ | Toggle Panel | — | |
| CtrlKthenZ | Toggle Zen Mode | — | |
| Ctrl\ | Split Editor | — | |
| Ctrl= | Zoom In | — | |
| Ctrl− | Zoom Out | — | |
| CtrlS | Save | — | |
| CtrlShiftS | Save As | — | |
| Ctrl` | Toggle Terminal | — | |
| CtrlShift` | New Terminal | — | |
| F9 | Toggle Breakpoint | — | |
| F5 | Start / Continue Debugging | — | |
| F10 | Step Over | — | |
| F11 | Step Into | — |
Moving from VS Code to Cursor
Your VS Code habits carry over. The keys to relearn are the conflicts at the top of the table, each listed by Cursor under the part of the app where it applies.
Which reference to pin
Pick the editor you spend the most hours in and keep its full shortcut set within glance distance. The shared editor keys are where the daily speed comes from; Cursor's AI keys are quick to learn once those are automatic.
FAQ
- Does Cursor use the same keyboard shortcuts as VS Code?
- Yes for the editor: Cursor is built on VS Code and keeps its keymap. Cursor adds shortcuts of its own for its AI features, and some use a combination VS Code assigns to another action — the table lists them.
- How do I open Cursor's side panel?
- ⌘I on a Mac or Ctrl+I on Windows toggles it; ⌘L (Ctrl+L) is an alternate binding.
- How do I open inline edit in Cursor?
- ⌘K on a Mac, Ctrl+K on Windows.