Kovid Goyal
82e2fe82d6
Add a couple more gseg tests
2025-04-11 13:34:16 +05:30
Kovid Goyal
c03dd673ae
Restore fast path for printable ASCII
2025-04-11 09:34:21 +05:30
Kovid Goyal
e976cf67fd
Make GraphemeBreakProperty available globally
2025-04-11 09:34:21 +05:30
Kovid Goyal
6712169c0f
...
2025-04-01 17:18:11 +05:30
Kovid Goyal
057dde35a7
Use a two stage lookup table for segmentation
...
Saves one extra array lookup at no cost in size
2025-04-01 14:25:24 +05:30
Kovid Goyal
557e6547f2
...
2025-04-01 13:31:20 +05:30
Kovid Goyal
d4d2ae969e
Use a branchless check for unicode range
2025-04-01 12:32:17 +05:30
Kovid Goyal
6ecd78d9db
Remove bounds checking for unicode table access in Go
2025-04-01 10:41:17 +05:30
Kovid Goyal
de1adeee5e
DRYer
2025-03-31 22:01:49 +05:30
Kovid Goyal
66856e7b52
Use a multi-stage lookup table for grapheme segmentation
2025-03-31 21:51:28 +05:30
Kovid Goyal
163b3de85b
Also forgot to add non-characters to invalid class
2025-03-30 10:44:26 +05:30
Kovid Goyal
a5a25fbd8c
Fix missed out some codepoints when porting is_non_rendered to unicode lookup table
...
Fixes #8495
2025-03-30 10:40:19 +05:30
Kovid Goyal
2eed7b62ab
More work on seg lookup tables
2025-03-29 09:35:44 +05:30
Kovid Goyal
d9d483d2c1
More work on segmentation lookup table
2025-03-29 08:49:52 +05:30
Kovid Goyal
01cdfcd002
Work on table based lookup for grapheme segmentation
2025-03-28 15:06:48 +05:30
Kovid Goyal
3e50588525
Add a test for PUA recog
2025-03-25 16:52:01 +05:30
Kovid Goyal
fd2bbf57e3
Make unicode category data useable in other modules
2025-03-25 16:35:09 +05:30
Kovid Goyal
294de16898
Use ms table for remaining UCD lookups
2025-03-25 15:41:34 +05:30
Kovid Goyal
aad58cf703
Declare CharProps just once
2025-03-25 14:08:47 +05:30
Kovid Goyal
d429f732e1
DRYer
2025-03-25 13:45:56 +05:30
Kovid Goyal
61ae12e0a9
DRYer
2025-03-25 13:29:11 +05:30
Kovid Goyal
b66a763ddf
Use a 3 stage table for Unicode properties
...
Halves the data size and reduces source code size by 50x
Shows no significant runtime performance effect.
Allows for easily adding more properties to the table in the future
2025-03-25 13:16:59 +05:30
Kovid Goyal
9f7643078c
Use unicode multi-table for remaining hot path lookups
...
Results in a 15% improvement in the unicode throughput benchmark
2025-03-24 15:04:33 +05:30
Kovid Goyal
3d0e45ace8
Use the new multi-stage unicode table for wcwidth
2025-03-24 14:20:40 +05:30
Kovid Goyal
7697a1650d
Add is_emoji_presentation_base to char props table
2025-03-24 13:55:49 +05:30
Kovid Goyal
16f7380cb0
Implement grapheme segmentation in Go
2025-03-23 19:24:12 +05:30
Kovid Goyal
aa8c32006f
Implement grapheme seg algo in Go
2025-03-22 14:54:58 +05:30
Kovid Goyal
7e780a2294
CharProps data for Go
2025-03-22 13:18:09 +05:30
Kovid Goyal
097c16b895
Nicer bitfield names
2025-03-22 12:39:41 +05:30
Kovid Goyal
4c31cb179e
Make go bitfield generation code re-useable
2025-03-22 12:05:56 +05:30
Kovid Goyal
9663f935fb
...
2025-03-22 11:56:56 +05:30
Kovid Goyal
583a858769
Use a multistage lookup table for grapheme segmentation
2025-03-22 11:50:04 +05:30
Kovid Goyal
0d866b1f13
Add tests for grapheme segmentation
...
Test data provided by Unicode organisation
2025-03-13 13:48:35 +05:30
Kovid Goyal
9c1c141775
Start work on grapheme segmentation algorithm
2025-03-13 11:19:54 +05:30
Kovid Goyal
98f9a568ce
Add Extended_Pictographic property
2025-03-13 10:01:41 +05:30
Kovid Goyal
039af78785
Add Indic Conjunct Break data
2025-03-13 09:18:42 +05:30
Kovid Goyal
1ee0b3369d
Fix GBP generation
2025-03-13 08:37:52 +05:30
Kovid Goyal
9cb56c2775
Run gofmt on grapheme-segmentation-data
2025-03-13 07:11:21 +05:30
Kovid Goyal
dc625c5e0c
Add grapheme break properties when generating wcwidth data
2025-03-13 07:06:46 +05:30
Kovid Goyal
2a714928db
When dragging in rectangle select mode use a crosshair mouse cursor
2025-02-23 10:32:54 +05:30
Kovid Goyal
15f711d6b5
Start work on horizontal align for multicells
2025-02-19 07:50:40 +05:30
Kovid Goyal
61edc2aef7
Dont treat multicells containing narrow emoji as having emoji presentation
...
Fixes #8330
2025-02-14 20:37:31 +05:30
Kovid Goyal
fb54f1527f
Update type signatures generated by gen/config.py
2025-02-11 22:22:57 +05:30
Kovid Goyal
c7fb942c4c
Fix a regression in the previous release that broke setting of nullable colors
2025-02-11 22:07:42 +05:30
Kovid Goyal
b0c41a70bd
Start work on VT LineBuf in Go
2025-02-07 20:09:00 +05:30
Kovid Goyal
2f57d20153
Add hyperlink id to CellAttrs
2025-02-06 20:35:50 +05:30
Kovid Goyal
92e2b93e95
Start work on VT implementation in Go
...
Will be used by pager kitten
2025-02-06 12:31:32 +05:30
Kovid Goyal
5c2c88858b
Implement reporting of multicell commands
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