- Add helper functions for better code organization (createPrintableKey,
getCompleteCsiSequenceLength, parsePlainTextPrefix)
- Drop unsupported Kitty CSI-u keys without blocking subsequent input
- Recover plain text that arrives in same chunk after unsupported CSI-u keys
- Add comprehensive tests for edge cases (CAPS_LOCK, event metadata variants)
Improves robustness of Kitty keyboard protocol parsing by gracefully
handling unsupported key codes and ensuring plain text input is not lost.
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
Add handling for printable CSI-u keys (including space) to ensure they
behave like regular character input. This allows downstream text inputs
to receive the literal character when using Kitty protocol.
- Parse CSI-u space as space key with literal sequence
- Parse CSI-u printable letters as literal input
- Handle keyCode range 32-0x10ffff (excluding 127 DEL)
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
- Replace ConsolePatcher with centralized debugLogger utility
- Refactor errorReporting to use debugLogger instead of file-based reporting
- Remove user-facing console message components:
- Delete ConsolePatcher.ts, useConsoleMessages.ts/hook
- Delete ConsoleSummaryDisplay.tsx, DetailedMessagesDisplay.tsx
- Update all tests in packages/core and packages/cli:
- Mock debugLogger where needed
- Remove assertions for console output on non-critical errors
- Keep debugLogger assertions for fatal/network errors
- Use HOME directory mocking for hermetic file system tests
Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>