Option + Arrow keys no longer work in the integrated terminal

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Option + Arrow keys no longer work in the integrated terminal; instead, it prints “A” or “B” or “C” or “D” for up, down, left, right arrows, respectively, in ZSH. In bash, it’s “;3A” “;3B” “;3C” “;3D”.

No changes were made on my side, I just updated the IDE.

In the settings, there are existing bindings like “cursorWordLeft” when “textInputFocus” for each key

Similar issue: ⌥ + arrow no longer works

Steps to Reproduce

  1. Open integrated terminal
  2. Write something like “Hello World”
  3. Try to move the cursor one word back by pressing “Option + Left Arrow”
  4. It does not work, instead it prints “;3D” in bash or “D” in zsh.

Expected Behavior

Option + Arrow left(right) must move the caret one word back(forward)

Operating System

MacOS

Version Information

Version: 3.3.30 (Universal)
VSCode Version: 1.105.1
Commit: 3dc559280adc5f931ade8e25c7b85393842acf30
Date: 2026-05-09T18:28:42.332Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Darwin arm64 25.4.0

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, this is a known regression in 3.3.x. In one of the recent updates, the default Kitty keyboard protocol setting changed in the terminal. Because of that, Option+Arrow and Option+Delete send CSI u instead of ESC b and ESC f, which zsh, bash, and readline expect for word-wise navigation.

Workaround, add this to settings.json:

"terminal.integrated.enableKittyKeyboardProtocol": false

After that, Option+Left and Option+Right should move the cursor by words again. The issue is being tracked, but I can’t share an exact ETA for a fix yet.