Kovid Goyal
cf2fffaf95
Fix continuation char marking when rewrapping historybuf
2025-02-03 10:56:49 +05:30
Kovid Goyal
eb1adf4764
Decouple some API in historybuf so that we can access more than just the next line eventually
2025-02-03 10:56:48 +05:30
Kovid Goyal
8daec0f1ff
DRYer
2025-02-03 10:56:48 +05:30
Kovid Goyal
b450e71b92
Move rewrap code into its own module
...
Makes it easier to modify in the future when adding multicell support
2025-02-03 10:56:48 +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
95fbc6e9ba
Forgot a couple of octants
2025-02-03 10:56:48 +05:30
Kovid Goyal
39dc31e021
Render the octant characters using box drawing
2025-02-03 10:56:48 +05:30
Kovid Goyal
4a845f840d
Scale multicell box char line thickness
2025-02-03 10:56:48 +05:30
Kovid Goyal
c67475271f
Remove box drawing python code
2025-02-03 10:56:48 +05:30
Kovid Goyal
6a18db45f0
Finish porting of box drawing chars to C
2025-02-03 10:56:48 +05:30
Kovid Goyal
95e64a023f
More box chars
2025-02-03 10:56:48 +05:30
Kovid Goyal
9426ed0140
More box chars
2025-02-03 10:56:48 +05:30
Kovid Goyal
a726e4af90
More box chars
2025-02-03 10:56:48 +05:30
Kovid Goyal
7bd0b46a71
More box chars
2025-02-03 10:56:48 +05:30
Kovid Goyal
68167b9ddb
More box chars
2025-02-03 10:56:48 +05:30
Kovid Goyal
0bd5ba50b6
More box chars
2025-02-03 10:56:47 +05:30
Kovid Goyal
0d80d24c58
...
2025-02-03 10:56:47 +05:30
Kovid Goyal
b409205dd8
More box chars
2025-02-03 10:56:47 +05:30
Kovid Goyal
947e934761
More box chars
2025-02-03 10:56:47 +05:30
Kovid Goyal
a1ce619b92
More work on box drawing
2025-02-03 10:56:47 +05:30
Kovid Goyal
596cbf0cef
...
2025-02-03 10:56:47 +05:30
Kovid Goyal
32fbe89709
More work on box drawing porting
2025-02-03 10:56:47 +05:30
Kovid Goyal
e047a9c66d
More work on box char porting
2025-02-03 10:56:47 +05:30
Kovid Goyal
46eefef54b
...
2025-02-03 10:56:47 +05:30
Kovid Goyal
9f0a3611cb
Log an error for unknown box drawing chars
2025-02-03 10:56:47 +05:30
Kovid Goyal
fdb9b17943
start work on porting box drawing to C
2025-02-03 10:56:47 +05:30
Kovid Goyal
ec3a6cc26e
Fix disabling of ligatures under cursor in multicell
2025-02-03 10:56:47 +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
72d88e75aa
Always zero memory from arena
2025-02-03 10:56:47 +05:30
Kovid Goyal
dc1bed1bd1
Use XXHash for hash table hashing of arbitrary sized keys
...
Much faster than FNV
2025-02-03 10:56:46 +05:30
Kovid Goyal
b602915d5b
...
2025-02-03 10:56:46 +05:30
Kovid Goyal
b7e8d6d103
Use an arena for TextCache as well
2025-02-03 10:56:46 +05:30
Kovid Goyal
1047142ee0
...
2025-02-03 10:56:46 +05:30
Kovid Goyal
0902f6aee0
Use an arena allocator for the sprite position map
2025-02-03 10:56:46 +05:30
Kovid Goyal
d781c671a1
Fix rendering of scaled url exclusions
2025-02-03 10:56:46 +05:30
Kovid Goyal
08d03a3e3a
...
2025-02-03 10:56:46 +05:30
Kovid Goyal
81a5f29979
Option to control underline exclusion
2025-02-03 10:56:46 +05:30
Kovid Goyal
1707e603f3
Implement underline exclusion
2025-02-03 10:56:46 +05:30
Kovid Goyal
eb322913c3
Remove a switch in the cell vertex shader
2025-02-03 10:56:46 +05:30
Kovid Goyal
e8fa5a3717
...
2025-02-03 10:56:46 +05:30
Kovid Goyal
27c862970b
Simplify sprite management code
...
Now if decorations are needed they are created *before* the index for
the sprite is assigned.
2025-02-03 10:56:46 +05:30
Kovid Goyal
70b0aecf32
Track the underline region for every decoration group
2025-02-03 10:56:46 +05:30
Kovid Goyal
b249fba93d
misc fixes for decoration rendering
2025-02-03 10:56:46 +05:30
Kovid Goyal
c3361cd26b
...
2025-02-03 10:56:46 +05:30
Kovid Goyal
3f04b31725
Fix build on older compiler
2025-02-03 10:56:46 +05:30
Kovid Goyal
88f796a94c
Read decorations indices from a separate texture
2025-02-03 10:56:45 +05:30
Kovid Goyal
b2a4db2028
Revert metadata row for sprites
...
Store in a separate VAO instead more performant as it uses less VRAM and
allows shader lookup co-ords to be passed to fragment shaders without
calculation in the fragment shader.
2025-02-03 10:56:45 +05:30
Kovid Goyal
9e9ab3e6f9
pass decorations location as sprite metadata
2025-02-03 10:56:45 +05:30
Kovid Goyal
5d195bf50b
Give sprites a metadata row accessible in the shaders
...
Will allow sprites to point to where their decorations should be read
from, for instance. Needed for scaled text and also if we want to
implement decoration avoidance.
2025-02-03 10:56:45 +05:30