Tim Culverhouse
f1a9e21a98
tty: use grapheme cache in the tty run method
...
We only need the grapheme cache when we are parsing input
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-22 10:40:30 -06:00
Tim Culverhouse
64557bf9ab
parser: use a ring buffer to store raw text
...
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-22 10:26:33 -06:00
Tim Culverhouse
40525eb038
parser: handle graphemes
...
I'm not positive this is the final approach. We fill in the `text` field
if there was multi-codepoint text generated from the key_press.
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-21 17:54:44 -06:00
Tim Culverhouse
0f12881c17
parser: handle non-ascii input
...
But not full on graphemes, yet
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-21 16:11:51 -06:00
Tim Culverhouse
244ad8b68e
parser: add unit tests
...
Test (nearly?) implementation so far
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-21 13:14:30 -06:00
Tim Culverhouse
4ac15e2195
parser: refactor into testable function
...
Signed-off-by: Tim Culverhouse <tim@timculverhouse.com>
2024-01-21 12:47:34 -06:00