Mario Zechner
cfa63c255d
Add [Unreleased] section for next cycle
2026-01-08 04:53:51 +01:00
Mario Zechner
4b084d0f9d
Release v0.38.0
2026-01-08 04:52:55 +01:00
Mario Zechner
f3b7b0b179
fix(tui): handle batched input over SSH with StdinBuffer
...
Adds StdinBuffer class (adapted from OpenTUI, MIT license) to split
batched stdin into individual sequences before they reach components.
This fixes key presses being dropped when batched with release events,
which commonly occurs over SSH due to network buffering.
- Each handleInput() call now receives a single event
- matchesKey() and isKeyRelease() work correctly without batching awareness
- Properly buffers incomplete escape sequences across chunks
- Handles bracketed paste mode
Addresses #538
2026-01-07 17:50:06 +01:00
Mario Zechner
09471ebc7d
feat(coding-agent): add ctx.ui.setEditorComponent() extension API
...
- Add setEditorComponent() to ctx.ui for custom editor components
- Add CustomEditor base class for extensions (handles app keybindings)
- Add keybindings parameter to ctx.ui.custom() factory (breaking change)
- Add modal-editor.ts example (vim-like modes)
- Add rainbow-editor.ts example (animated text highlighting)
- Update docs: extensions.md, tui.md Pattern 7
- Clean up terminal on TUI render errors
2026-01-07 16:11:49 +01:00
Mario Zechner
fcb3b4aa72
Add [Unreleased] section for next cycle
2026-01-07 01:33:34 +01:00
Mario Zechner
5514d4ffdb
Release v0.37.8
2026-01-07 01:32:53 +01:00
Mario Zechner
41fe329cdd
fix(tui): filter key release events by default
...
Components must set wantsKeyRelease=true to receive release events.
Fixes double-processing of keys in editors when Kitty protocol flag 2 is enabled.
2026-01-07 01:31:24 +01:00
Mario Zechner
7508a51599
Add [Unreleased] section for next cycle
2026-01-07 01:02:34 +01:00
Mario Zechner
a4f2bb5c27
Release v0.37.7
2026-01-07 01:01:55 +01:00
Mario Zechner
62919fc1d4
docs(tui): add changelog entry for matchesKey fix
2026-01-07 00:57:28 +01:00
Mario Zechner
9330f5a10a
Add [Unreleased] section for next cycle
2026-01-07 00:43:25 +01:00
Mario Zechner
befbeb30e4
Release v0.37.6
2026-01-07 00:42:45 +01:00
Mario Zechner
a2f032a426
feat(tui): add Kitty keyboard protocol flag 2 support for key release events
...
- Enable flag 2 in Kitty protocol for event type reporting
- Add isKeyRelease() and isKeyRepeat() functions
- Parse event type suffix (:1/:2/:3) in Kitty sequences
- Export KeyEventType type
2026-01-07 00:41:44 +01:00
Mario Zechner
a00322175f
Add [Unreleased] section for next cycle
2026-01-06 23:25:53 +01:00
Mario Zechner
fe95983dcf
Release v0.37.5
2026-01-06 23:25:12 +01:00
Mario Zechner
f87fb0a38a
Add [Unreleased] section for next cycle
2026-01-06 21:29:03 +01:00
Mario Zechner
b08a6b22ce
Release v0.37.4
2026-01-06 21:28:24 +01:00
Mario Zechner
a236e62025
Add [Unreleased] section for next cycle
2026-01-06 13:44:28 +01:00
Mario Zechner
86fea6379c
Release v0.37.3
2026-01-06 13:43:47 +01:00
Mario Zechner
9063a71fe6
Add [Unreleased] section for next cycle
2026-01-06 00:54:00 +01:00
Mario Zechner
6f4d16d76f
Release v0.37.2
2026-01-06 00:53:18 +01:00
Mario Zechner
2da853e9d6
Add [Unreleased] section for next cycle
2026-01-06 00:32:56 +01:00
Mario Zechner
a20112f45f
Release v0.37.1
2026-01-06 00:32:09 +01:00
Mario Zechner
0c712659b3
Add [Unreleased] section for next cycle
2026-01-06 00:07:57 +01:00
Mario Zechner
d3d53392e8
Release v0.37.0
2026-01-06 00:07:15 +01:00
Mario Zechner
817221b79f
fix(tui): trim trailing whitespace in wrapped lines to prevent width overflow
...
fixes #457
2026-01-05 18:16:54 +01:00
Mario Zechner
74d5f5523e
Add [Unreleased] section for next cycle
2026-01-05 06:17:05 +01:00
Mario Zechner
435cd5d61f
Release v0.36.0
2026-01-05 06:16:25 +01:00
Mario Zechner
32f032b6d1
Add [Unreleased] section for next cycle
2026-01-05 03:42:07 +01:00
Mario Zechner
78d0b88f7d
Release v0.35.0
2026-01-05 03:41:24 +01:00
Mario Zechner
12805f61bd
Add [Unreleased] section for next cycle
2026-01-04 21:06:48 +01:00
Mario Zechner
71c978e2f9
Release v0.34.2
2026-01-04 21:06:08 +01:00
Mario Zechner
2a47b1114d
Add [Unreleased] section for next cycle
2026-01-04 20:57:34 +01:00
Mario Zechner
de92eeda1f
Release v0.34.1
2026-01-04 20:56:51 +01:00
Mario Zechner
2a332f7064
docs: add changelog entries for symbol key support ( #450 )
2026-01-04 20:38:27 +01:00
Mario Zechner
61cadc226c
Add [Unreleased] section for next cycle
2026-01-04 20:30:34 +01:00
Mario Zechner
dc2f5d43cc
Release v0.34.0
2026-01-04 20:29:50 +01:00
Aliou Diallo
0d477d39f9
fix(tui): expand paste markers when opening external editor ( #444 )
...
* fix(tui): expand paste markers when opening external editor
Add getExpandedText() method to Editor that substitutes paste markers
with actual content. Use it in Ctrl-G external editor flow so users
see full pasted content instead of [paste #N ...] placeholders.
* docs: add changelog entries for #444
2026-01-04 18:11:42 +01:00
Mario Zechner
7e2a99b485
Add [Unreleased] section for next cycle
2026-01-04 01:08:11 +01:00
Mario Zechner
faa10b9a7e
Release v0.33.0
2026-01-04 01:07:24 +01:00
Mario Zechner
5c5084481b
feat(coding-agent): clipboard image paste support via Ctrl+V ( fixes #419 )
2026-01-04 01:05:22 +01:00
Mario Zechner
f2b89d5ec5
Merge branch 'feat/ctrl-n-external-editor' - configurable keybindings ( #405 )
2026-01-03 22:51:12 +01:00
Mario Zechner
b8814372af
Add changelog and README docs for keybindings feature ( #405 )
2026-01-03 22:49:58 +01:00
Mario Zechner
7aba5883f2
Add [Unreleased] section for next cycle
2026-01-03 17:09:58 +01:00
Mario Zechner
db829e73f9
Release v0.32.3
2026-01-03 17:09:22 +01:00
Mario Zechner
aea2ced2b8
Add [Unreleased] section for next cycle
2026-01-03 16:08:48 +01:00
Mario Zechner
113713d380
Release v0.32.2
2026-01-03 16:08:14 +01:00
Mario Zechner
69a8ecd5b3
fix: slash command autocomplete triggers for . - _ prefixes
...
fixes #422
2026-01-03 15:44:36 +01:00
Mario Zechner
5f91baa29e
Add [Unreleased] section for next cycle
2026-01-03 04:26:33 +01:00
Mario Zechner
b783a3f50f
Release v0.32.1
2026-01-03 04:25:57 +01:00