Repository navigation
nativelite-vterm 0.5.2
A run of plain ASCII is now blitted into the screen rather than written cell by cell. Terminal output is overwhelmingly plain ASCII, and every character used to cost a width lookup, a buffer re-borrow, a cursor read and write, and a bounds-checked cell write — 14.6 million of them for a 16 MB log.
Feeding 16 MB of coloured log output at 40x160: 66.0 -> 173.1 MB/s on Linux (54.0 -> 89.6 on Windows). Applying tokens dropped from 0.177 s to 0.034 s, so parsing is now 81% of the emulator's time.
Anything the fast path does not cover — a pending wrap, a wide or zero-width glyph, a control byte, the last column of a row — still goes through the per-character path unchanged. No API change.