mirror of
https://github.com/getcompanion-ai/co-mono.git
synced 2026-04-15 09:01:14 +00:00
4.8 KiB
4.8 KiB
Changelog
[Unreleased]
[0.34.2] - 2026-01-04
[0.34.1] - 2026-01-04
Added
- Symbol key support in keybinding system:
SymbolKeytype with 32 symbol keys,Keyconstants (e.g.,Key.backtick,Key.comma), updatedmatchesKey()andparseKey()to handle symbol input (#450 by @kaofelix)
[0.34.0] - 2026-01-04
Added
Editor.getExpandedText()method that returns text with paste markers expanded to their actual content (#444 by @aliou)
[0.33.0] - 2026-01-04
Breaking Changes
- Key detection functions removed: All
isXxx()key detection functions (isEnter(),isEscape(),isCtrlC(), etc.) have been removed. UsematchesKey(data, keyId)instead (e.g.,matchesKey(data, "enter"),matchesKey(data, "ctrl+c")). This affects hooks and custom tools that usectx.ui.custom()with keyboard input handling. (#405)
Added
Editor.insertTextAtCursor(text)method for programmatic text insertion (#419)EditorKeybindingsManagerfor configurable editor keybindings. Components now usematchesKey()and keybindings manager instead of individualisXxx()functions. (#405 by @hjanuschka)
Changed
- Key detection refactored: consolidated
is*()functions into genericmatchesKey(data, keyId)function that accepts key identifiers like"ctrl+c","shift+enter","alt+left", etc.
[0.32.3] - 2026-01-03
[0.32.2] - 2026-01-03
Fixed
- Slash command autocomplete now triggers for commands starting with
.,-, or_(e.g.,/.land,/-foo) (#422)
[0.32.1] - 2026-01-03
[0.32.0] - 2026-01-03
Changed
- Editor component now uses word wrapping instead of character-level wrapping for better readability (#382 by @nickseelert)
Fixed
- Shift+Space, Shift+Backspace, and Shift+Delete now work correctly in Kitty-protocol terminals (Kitty, WezTerm, etc.) instead of being silently ignored (#411 by @nathyong)
[0.31.1] - 2026-01-02
Fixed
visibleWidth()now strips OSC 8 hyperlink sequences, fixing text wrapping for clickable links (#396 by @Cursivez)
[0.31.0] - 2026-01-02
Added
isShiftCtrlO()key detection function for Shift+Ctrl+O (Kitty protocol)isShiftCtrlD()key detection function for Shift+Ctrl+D (Kitty protocol)TUI.onDebugcallback for global debug key handling (Shift+Ctrl+D)wrapTextWithAnsi()utility now exported (wraps text to width, preserving ANSI codes)
Changed
- README.md completely rewritten with accurate component documentation, theme interfaces, and examples
visibleWidth()reimplemented with grapheme-based width calculation, 10x faster on Bun and ~15% faster on Node (#369 by @nathyong)
Fixed
- Markdown component now renders HTML tags as plain text instead of silently dropping them (#359)
- Crash in
visibleWidth()and grapheme iteration when encountering undefined code points (#372 by @HACKE-RC) - ZWJ emoji sequences (rainbow flag, family, etc.) now render with correct width instead of being split into multiple characters (#369 by @nathyong)
[0.29.0] - 2025-12-25
Added
- Auto-space before pasted file paths: When pasting a file path (starting with
/,~, or.) and the cursor is after a word character, a space is automatically prepended for better readability. Useful when dragging screenshots from macOS. (#307 by @mitsuhiko) - Word navigation for Input component: Added Ctrl+Left/Right and Alt+Left/Right support for word-by-word cursor movement. (#306 by @kim0)
- Full Unicode input: Input component now accepts Unicode characters beyond ASCII. (#306 by @kim0)