@code-yeongyu/senpi-tui 2026.11.6-1 → 2026.11.6-3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/keys.js +6 -4
- package/package.json +1 -1
package/dist/keys.js
CHANGED
|
@@ -905,8 +905,10 @@ export function matchesKey(data, keyId) {
|
|
|
905
905
|
if (data === `\x1b${rawCtrl}`)
|
|
906
906
|
return true;
|
|
907
907
|
}
|
|
908
|
-
if (modifier === MODIFIERS.alt &&
|
|
909
|
-
// Legacy: alt+printable key is ESC followed by the key
|
|
908
|
+
if (modifier === MODIFIERS.alt && (isLetter || isDigit || SYMBOL_KEYS.has(key))) {
|
|
909
|
+
// Legacy: alt+printable key is ESC followed by the key. Accepted with Kitty active too: a
|
|
910
|
+
// conforming Kitty terminal sends Escape as CSI 27 u, and under ConPTY the reply comes from the
|
|
911
|
+
// outer terminal while the console host still encodes Alt as ESC <key> (#6058).
|
|
910
912
|
if (data === `\x1b${key}`)
|
|
911
913
|
return true;
|
|
912
914
|
}
|
|
@@ -1057,9 +1059,9 @@ export function parseKey(data) {
|
|
|
1057
1059
|
return "alt+left";
|
|
1058
1060
|
if (!_kittyProtocolActive && data === "\x1bF")
|
|
1059
1061
|
return "alt+right";
|
|
1060
|
-
if (
|
|
1062
|
+
if (data.length === 2 && data[0] === "\x1b") {
|
|
1061
1063
|
const code = data.charCodeAt(1);
|
|
1062
|
-
if (code >= 1 && code <= 26) {
|
|
1064
|
+
if (!_kittyProtocolActive && code >= 1 && code <= 26) {
|
|
1063
1065
|
return `ctrl+alt+${String.fromCharCode(code + 96)}`;
|
|
1064
1066
|
}
|
|
1065
1067
|
// Legacy alt+letter/digit/symbol (ESC followed by the key)
|
package/package.json
CHANGED