Kovid Goyal
4c2bd8ffb1
Implement zero width roundtripped chars in multicell segmentation as well
2025-04-11 09:34:21 +05:30
Kovid Goyal
f57f3d9909
Fix #8464
2025-03-21 19:55:45 +05:30
Kovid Goyal
15f711d6b5
Start work on horizontal align for multicells
2025-02-19 07:50:40 +05:30
Kovid Goyal
bedc2ea1b9
Reduce num of bits used for x/y multicell
2025-02-19 05:53:07 +05:30
Kovid Goyal
b4b2b44c92
Multicell selections: Clamp to line
...
When the end point of the selection is within a multicell character of
the same size and vertical position as the start point, clamp the
selection line to the start line to avoid un-intuitive multiline
selections.
Fixes #8310
2025-02-15 13:11:46 +05:30
Kovid Goyal
dc5c9b5bf4
Another test
2025-02-15 11:38:49 +05:30
Kovid Goyal
0e820f5d9c
ANSI output: Preserve use of natural_width
...
Keeps semantics of the text the same when roundtripping rather than
visual appearance.
2025-02-15 11:03:20 +05:30
Kovid Goyal
888b8a3bfb
Use same algorithm for multicell selection expansion and text extraction
2025-02-15 10:43:32 +05:30
Kovid Goyal
077116e027
Fix a typo causing corruption of multiline chars split between history buffer and line buffer on resize
2025-02-11 11:55:15 +05:30
Kovid Goyal
8bf8f5dc46
Finish up testing for multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
64e3b641ce
Get basic multicell URL detection working
2025-02-03 10:56:50 +05:30
Kovid Goyal
6a19918687
More work on multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
f599144913
Fix multicell marking of hyperlinks
2025-02-03 10:56:50 +05:30
Kovid Goyal
2423c2166e
More tests for multicell selections
2025-02-03 10:56:50 +05:30
Kovid Goyal
922d08516b
...
2025-02-03 10:56:50 +05:30
Kovid Goyal
ac1aaab077
More work of selections as text
2025-02-03 10:56:50 +05:30
Kovid Goyal
ac32f91a2e
Implement rendering of selections that intersect multicell cells
2025-02-03 10:56:49 +05:30
Kovid Goyal
dc5037ff37
Add tests for multicell char split between history and line buffers
2025-02-03 10:56:49 +05:30
Kovid Goyal
97449dfddb
Cursor tracking tests
...
Also fix extra x movement for tracked cursors
2025-02-03 10:56:49 +05:30
Kovid Goyal
b3c39f4921
Finish up the redraw multicell tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
001cc8009e
More multicell rewrap tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
decafb0d3f
More multicell wrap tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
cf5f6e97e8
Add some basic tests for multicell rewrap
2025-02-03 10:56:49 +05:30
Kovid Goyal
5b0e1b5b5c
Fix wrap marker when continuing to a new line with a multicell command
2025-02-03 10:56:48 +05:30
Kovid Goyal
bbcb7dc24c
Fix cursor rendering when on first cell of multicell
2025-02-03 10:56:47 +05:30
Kovid Goyal
f67c58034c
Add tests for ch_and_idx
2025-02-03 10:56:47 +05:30
Kovid Goyal
87dea95a0e
Fix rendering of scaled emoji
2025-02-03 10:56:45 +05:30
Kovid Goyal
27bcd96071
Tests for combining char on multicell
2025-02-03 10:56:45 +05:30
Kovid Goyal
06c428ba7b
Fix drawing multiple chars where the second or later char is on a multicell
2025-02-03 10:56:45 +05:30
Kovid Goyal
4a0086b241
Fix vertical_align serialization
2025-02-03 10:56:45 +05:30
Kovid Goyal
8030cbd361
Allow more subscales
2025-02-03 10:56:44 +05:30
Kovid Goyal
b1c80d212f
Allow non-width multicell code to fill multiple cells using native width algo
2025-02-03 10:56:44 +05:30
Kovid Goyal
844d538e40
When drawing text, skip past multiline chars
2025-02-03 10:56:44 +05:30
Kovid Goyal
35946f9386
Improve performance of processing wide chars
...
Store multi cell data in the CPUCell rather than in TextCache.
This sends the CPUCell size back to 12 but in benchmarks ASCII
performance is untouched and Unicode performace goes back to what it was
before multicell
2025-02-03 10:56:44 +05:30
Kovid Goyal
383e1f8f57
Work on scaled rendering for box drawing chars
2025-02-03 10:56:43 +05:30
Kovid Goyal
394404a1ab
Add multicell tests for various edit operations
2025-02-03 10:56:43 +05:30
Kovid Goyal
e10df382f8
Tests for erasing characters
2025-02-03 10:56:43 +05:30
Kovid Goyal
8f0d291500
Delete chars with multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
23bb053fb4
Insert chars with multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
1ed4a349be
Clearance of multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
5e861ea5ac
Start work on testing multicell commands
2025-02-03 10:56:43 +05:30