Don't disambiguous kitty keyboard on shift only

Part of microsoft/vscode#286809
This commit is contained in:
Daniel Imms
2026-01-26 14:44:34 -08:00
parent 2521bab72f
commit 2af9d10171
2 changed files with 16 additions and 8 deletions
+7 -2
View File
@@ -351,8 +351,13 @@ export function evaluateKeyboardEventKitty(
} else if (isFunc) {
useCsiU = true;
} else if (modifiers > 0) {
// Any modified key
useCsiU = true;
// Shift-only + printable character (e.g., Shift+a → "A") should NOT use CSI u
// per Kitty spec: DISAMBIGUATE only encodes keys ambiguous in legacy encoding
if (ev.shiftKey && !ev.ctrlKey && !ev.altKey && !ev.metaKey && ev.key.length === 1) {
useCsiU = false;
} else {
useCsiU = true;
}
}
}