Commit graph

1175 commits

Author SHA1 Message Date
Kovid Goyal
38a2c6eab0
Cleanup previous PR 2025-04-05 09:22:10 +05:30
3pleX-dev
1d93982424 fix reproducibility issues 2025-04-05 01:27:23 +01:00
Kovid Goyal
4c28200cab
Separate out the control chars when generating benchmark data 2025-04-03 09:33:55 +05:30
Kovid Goyal
e0efdaa3f0
... 2025-04-03 09:26:04 +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
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
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
9e1601a9b5
Nicer way to include grapheme test data in Go tests 2025-03-27 03:20:27 +05:30
Kovid Goyal
7807e51e65
... 2025-03-26 22:06:17 +05:30
Kovid Goyal
305c1a25c5
More robust fetching of grapheme break test data in Go test 2025-03-26 21:56:52 +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
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
f02245af79
Also run gofmt on kittens subdir in CI 2025-03-23 20:26:10 +05:30
Kovid Goyal
c73f5ab8a0
... 2025-03-23 19:37:23 +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
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
191ea16cd7
Confirm and run tool 2025-03-20 13:35:12 +05:30
Kovid Goyal
d82edad2be
... 2025-03-20 12:50:51 +05:30
Kovid Goyal
0afa6d5b3d
Fix shebang viewing of short scripts not working 2025-03-20 12:49:28 +05:30
Kovid Goyal
f3448cbbee
... 2025-03-20 12:31:02 +05:30
Kovid Goyal
ca1555d12e
Avoid spinning up the python interpreter just for running a shebang 2025-03-20 11:36:59 +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
812fe467c9
Report OSC 6/106 as ignored only once 2025-03-09 19:02:19 +05:30
Kovid Goyal
375583259a
Fix --hold always restoring cursor to block shape instead of respecting the value of cursor_shape 2025-02-18 20:21:07 +05:30
Kovid Goyal
f29bc638ce
Remote control: allow scrolling to prev/next prompt 2025-02-18 19:17:10 +05:30
Kovid Goyal
54a42b564e
More work on Go VT parser 2025-02-10 11:46:46 +05:30
Kovid Goyal
8bf383d1c4
DRYer: Use the existing unix package stat() 2025-02-09 15:01:05 +05:30
Kovid Goyal
3832e45a6f
Fix another incorrect use of unix.Stat_t 2025-02-09 14:22:08 +05:30
Kovid Goyal
8e4050b923
... 2025-02-09 14:12:46 +05:30
Kovid Goyal
a582de98dc
Fix building of kitten on other platforms 2025-02-09 14:11:14 +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