Ctrl+Tab keybinding not working in terminal (interpreted as Tab instead of switching terminal tabs)

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

When pressing Ctrl+Tab in Cursor’s integrated terminal, it’s interpreted as a regular Tab keypress instead of switching between terminal tabs. This works correctly in VS Code with the same configuration.

Steps to Reproduce

  1. Open Cursor
  2. Create multiple terminal tabs
  3. Click in the terminal to focus it
  4. Press Ctrl+Tab
  5. Result: Tab character is inserted instead of switching to next terminal tab

Expected Behavior

Ctrl+Tab should switch to the next terminal tab (same as VS Code behavior).
But observed behavior in Cursor: Ctrl+Tab inserts a Tab character into the terminal.

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Cursor: 2.1.50
OS: macOS 26.1
Shell: zsh

Additional Information

Configuration Attempted:

  • Added keybinding: ctrl+tabworkbench.action.terminal.focusNextInstance with when: "terminalFocus"
  • Added terminal.integrated.commandsToSkipShell setting
  • Neither approach worked

This is a critical workflow issue as Ctrl+Tab is the standard shortcut for tab navigation across most applications.

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, thanks for the report.

The correct command is workbench.action.terminal.focusNext, not focusNextInstance. Try adding an explicit binding with the terminalFocus context to your keybindings.json:

{
  "key": "ctrl+tab",
  "command": "workbench.action.terminal.focusNext",
  "when": "terminalFocus"
}

Also check:

  1. Do the commands from the Command Palette work: “Terminal: Focus Next” / “Terminal: Focus Previous” when the terminal is focused?
  2. Are there conflicts in Settings → Keyboard Shortcuts for ctrl+tab?

Let me know if this helps.

Setting the following in keybindings.json works for me:

{
  {
    "key": "ctrl+tab",
    "command": "workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
    "when": "!inEditorsPicker && !inQuickOpen"
  },
  {
    "key": "ctrl+tab",
    "command": "-workbench.action.quickOpenPreviousRecentlyUsedEditorInGroup",
    "when": "editorFocus && !activeEditorGroupEmpty && !terminalFocus || !activeEditorGroupEmpty && !terminalFocus && activeEditor == 'workbench.editor.reviewchanges'"
  }
}

The reason of setting !inEditorsPicker && !inQuickOpen is to avoid conflict with workbench.action.quickOpenNavigateNextInEditorPicker, so that continously pressing ctrl+tab would work.

If it has not effect, try closing all cursor instances and restart.

1 Like

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.