Commit 2c4725e
fix(input): enable Alt→ESC prefix and fix macOS Alt-transformed keys (#18)
Fixes two keyboard issues from upstream coder#109:
1. Shift+Tab now produces the standard backtab sequence (CSI Z / \x1b[Z)
via the Ghostty encoder with SHIFT modifier on Key.TAB.
2. Alt+letter on macOS: Alt transforms event.key to Unicode (Alt+T → '†').
The encoder now receives the correct letter by deriving utf8 from
event.code (KeyT → 't') when altKey is set and event.key is non-ASCII.
3. Enable ALT_ESC_PREFIX (DEC mode 1036) by default so the encoder emits
ESC+letter for Alt-modified keys, matching xterm metaSendsEscape
default behavior.
Inspired by: coder#109
Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>1 parent 828627c commit 2c4725e
2 files changed
Lines changed: 53 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
587 | 587 | | |
588 | 588 | | |
589 | 589 | | |
| 590 | + | |
| 591 | + | |
| 592 | + | |
| 593 | + | |
| 594 | + | |
| 595 | + | |
| 596 | + | |
| 597 | + | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
| 604 | + | |
| 605 | + | |
| 606 | + | |
| 607 | + | |
| 608 | + | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
| 622 | + | |
| 623 | + | |
| 624 | + | |
| 625 | + | |
590 | 626 | | |
591 | 627 | | |
592 | 628 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
244 | 244 | | |
245 | 245 | | |
246 | 246 | | |
| 247 | + | |
| 248 | + | |
247 | 249 | | |
248 | 250 | | |
249 | 251 | | |
| |||
452 | 454 | | |
453 | 455 | | |
454 | 456 | | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
455 | 462 | | |
456 | 463 | | |
457 | 464 | | |
458 | 465 | | |
459 | | - | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
460 | 476 | | |
461 | 477 | | |
462 | 478 | | |
| |||
0 commit comments