cursor-keybindings

Master Cursor keyboard shortcuts and customize keybindings for AI features and editor commands. Triggers on "cursor shortcuts", "cursor keybindings", "cursor keyboard", "cursor hotkeys", "cursor commands", "Cmd+K", "Cmd+L", "Cmd+I".

Allowed Tools

ReadWriteEditBash(cmd:*)

Provided by Plugin

cursor-pack

Flagship+ skill pack for Cursor IDE - 30 skills for AI code completion, composer workflows, and IDE mastery

saas packs v1.18.0
View Plugin

Installation

This skill is included in the cursor-pack plugin:

/plugin install cursor-pack@claude-code-plugins-plus

Click to copy

Instructions

Cursor Keybindings

Overview

Configure keybindings for discoverability and accessibility without masking safety-critical editor commands or creating team-specific ambiguity.

Prerequisites

  • Existing team/editor shortcut conventions and a recoverable keybindings backup.
  • A non-sensitive test workspace for validating conflicts.

Instructions

  1. Search existing bindings before assigning a shortcut and prefer documented Cursor defaults when practical.
  2. Use workspace/team conventions for shared documentation; keep personal ergonomics local.
  3. Test conflict behavior in a sample workspace and retain an easy reset/revert path.
  4. Document custom bindings needed for pair programming, training, or support.

Output

  • A tested keybinding change with conflict result and recovery instructions.

Error Handling

Condition Safe response
Shortcut conflicts with edit/debug action Remove it or choose a non-conflicting binding.
Configuration prevents recovery Restore the backed-up keybindings file or reset only the affected entry.
Team documentation diverges Treat documented shared binding as authoritative and update it through review.

Examples

Assign a personal shortcut to a Cursor command only after checking the Keyboard Shortcuts UI for conflicts, test it in a sample project, and retain the previous keybindings entry. Do not overwrite a documented team shortcut without agreement.

Complete keyboard shortcut reference for Cursor IDE. Covers AI-specific shortcuts, standard editor commands, and customization. All shortcuts shown as macOS / Windows-Linux.

AI Feature Shortcuts

Primary AI Shortcuts

Action macOS Windows/Linux Notes
Chat panel Cmd+L Ctrl+L Open/focus AI chat sidebar
Inline Edit Cmd+K Ctrl+K Edit selected code with AI
Composer Cmd+I Ctrl+I Multi-file AI editing
Full Composer Cmd+Shift+I Ctrl+Shift+I Expanded composer view

Context & Suggestions

Action macOS Windows/Linux Notes
Add to Chat context Cmd+Shift+L Ctrl+Shift+L Add selected code to existing chat
Accept Tab suggestion Tab Tab Accept full ghost text
Accept word-by-word Cmd+→ Ctrl+→ Partial Tab acceptance
Dismiss suggestion Esc Esc Reject ghost text
Force trigger completion Ctrl+Space Ctrl+Space Manually trigger Tab
Accept inline edit Cmd+Y Ctrl+Y Accept Cmd+K changes
Reject inline edit Esc Esc Dismiss Cmd+K changes

Chat Management

Action macOS Windows/Linux Notes
New chat Cmd+N (in chat) Ctrl+N Start fresh conversation
Toggle chat panel Cmd+L Ctrl+L Show/hide chat sidebar

Essential Editor Shortcuts

Navigation

Action macOS Windows/Linux
Command Palette Cmd+Shift+P Ctrl+Shift+P
Quick Open file Cmd+P Ctrl+P
Go to Symbol Cmd+Shift+O Ctrl+Shift+O
Go to Line Cmd+G Ctrl+G
Go to Definition F12 F12
Peek Definition Option+F12 Alt+F12
Go Back Cmd+- Ctrl+-
Go Forward Cmd+Shift+- Ctrl+Shift+-

Editing

Action macOS Windows/Linux
Multi-cursor (add) Option+Click Alt+Click
Select all occurrences Cmd+Shift+L Ctrl+Shift+L
Move line up/down Option+↑/↓ Alt+↑/↓
Duplicate line Shift+Option+↑/↓ Shift+Alt+↑/↓
Delete line Cmd+Shift+K Ctrl+Shift+K
Toggle comment Cmd+/ Ctrl+/
Format document Shift+Option+F Shift+Alt+F
Rename symbol F2 F2
Quick Fix Cmd+. Ctrl+.

Panels & Views

Action macOS Windows/Linux
Toggle terminal Cmd+` Ctrl+`
Toggle sidebar Cmd+B Ctrl+B
Source Control Cmd+Shift+G Ctrl+Shift+G
Extensions Cmd+Shift+X Ctrl+Shift+X
Explorer Cmd+Shift+E Ctrl+Shift+E
Search across files Cmd+Shift+F Ctrl+Shift+F
Keyboard shortcuts editor Cmd+K Cmd+S Ctrl+K Ctrl+S

Customizing Keybindings

Via UI

  1. Cmd+K Cmd+S to open Keyboard Shortcuts editor
  2. Search for the command (e.g., "accept cursor tab")
  3. Click the pencil icon next to the keybinding
  4. Press your desired key combination
  5. If conflict detected, choose to override or cancel

Via JSON

Open keybindings.json: Cmd+Shift+P > Open Keyboard Shortcuts (JSON)


[
  {
    "key": "cmd+enter",
    "command": "editor.action.inlineSuggest.commit",
    "when": "inlineSuggestionVisible"
  },
  {
    "key": "ctrl+shift+k",
    "command": "aichat.newchat",
    "when": "editorFocus"
  },
  {
    "key": "cmd+k cmd+a",
    "command": "editor.action.selectAll",
    "when": "editorTextFocus && !editorReadonly"
  }
]

Vim Mode Compatibility

If using the Vim extension with Cursor:


// keybindings.json -- resolve Vim conflicts
[
  {
    "key": "ctrl+l",
    "command": "aichat.focus",
    "when": "!vim.active || vim.mode == 'Normal'"
  },
  {
    "key": "ctrl+k",
    "command": "cursor.edit",
    "when": "editorTextFocus && !vim.active"
  }
]

Common Vim conflicts:

  • Ctrl+K conflicts with Vim's digraph mode
  • Ctrl+L conflicts with Vim's clear/redraw
  • Ctrl+I conflicts with Vim's jump forward

Solution: Remap Cursor AI shortcuts to avoid Vim's control sequences, or use when clauses to scope by Vim mode.

Cheat Sheet (Print-Friendly)


╔══════════════════════════════════════════════╗
║  CURSOR AI SHORTCUTS (macOS)                 ║
╠══════════════════════════════════════════════╣
║  Cmd+L       Chat panel                     ║
║  Cmd+K       Inline edit (select first)     ║
║  Cmd+I       Composer (multi-file)          ║
║  Cmd+Shift+L Add selection to chat          ║
║  Tab         Accept Tab suggestion          ║
║  Cmd+→       Accept suggestion word-by-word ║
║  Esc         Dismiss suggestion             ║
║  Cmd+Y       Accept inline edit             ║
║  Cmd+Shift+P Command Palette               ║
║  Cmd+P       Quick Open file                ║
╚══════════════════════════════════════════════╝

Enterprise Considerations

  • Keybinding policies: Teams can share a keybindings.json in the project repo (.vscode/keybindings.json)
  • Accessibility: Cursor supports screen readers and keyboard-only navigation via standard VS Code accessibility features
  • Corporate keyboards: International keyboard layouts may require different mappings for Cmd+K/L/I

Resources

Ready to use cursor-pack?