@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.
Files changed (2) hide show
  1. package/dist/keys.js +6 -4
  2. 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 && !_kittyProtocolActive && (isLetter || isDigit || SYMBOL_KEYS.has(key))) {
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 (!_kittyProtocolActive && data.length === 2 && data[0] === "\x1b") {
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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@code-yeongyu/senpi-tui",
3
- "version": "2026.11.6-1",
3
+ "version": "2026.11.6-3",
4
4
  "description": "Terminal User Interface library with differential rendering for efficient text-based applications",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",