Commit Graph

1159 Commits

Author SHA1 Message Date
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
Kovid Goyal
8931062a70 hints kitten: Workaround for some broken light color themes that make the hints text color too low contrast to read
Fixes #7330
2025-01-17 20:22:10 +05:30
Kovid Goyal
0ffaaff8a7 Fix #8220 2025-01-16 13:21:31 +05:30
Kovid Goyal
1eeea70c7a Allow dynamically generating configuration by running an arbitrary program using the new geninclude directive 2025-01-06 19:00:01 +05:30
Kovid Goyal
795bf7fb52 Dont use a global var for mocking 2025-01-05 20:58:33 +05:30
Kovid Goyal
86a6685446 Add mock for failing test 2025-01-05 20:36:32 +05:30
Kovid Goyal
2d02ff1c5f Implement using effective kitty config options for kittens
Also centralise reading of kitty options
2025-01-05 20:16:43 +05:30
Kovid Goyal
334adf9c1a Ensure temp files and other resources are cleaned up even if kitty crashes or is SIGKILLed 2025-01-05 12:51:59 +05:30
Kovid Goyal
25cb73511f Implement atexit.rmtree 2025-01-05 11:04:23 +05:30
Kovid Goyal
0d5bcff353 Tool to implement robust cleanups even on process crash 2025-01-05 10:50:50 +05:30
Kovid Goyal
f3db7e7554 diff kitten: Automatically change colors on terminal color scheme change 2025-01-05 06:00:24 +05:30
Kovid Goyal
134271be93 diff kitten: Abort when run inside a terminal that does not support the kitty keyboard protocol
Fixes #8185
2025-01-03 21:34:38 +05:30
Kovid Goyal
fc463aaba5 Code to query terminal for capabilities 2025-01-03 21:30:05 +05:30
Kovid Goyal
35b3ae8edb Revert "themes kitten: When using the Default theme as an auto switch theme include all the actual settings values"
This reverts commit 2abc0be844.
2024-12-20 12:54:47 +05:30
Kovid Goyal
2abc0be844 themes kitten: When using the Default theme as an auto switch theme include all the actual settings values
Fixes #8124
2024-12-16 15:32:32 +05:30
Kovid Goyal
d5356804c8 ... 2024-11-23 12:06:39 +05:30
Kovid Goyal
a87ccbf8e5 Add some combining chars to the benchmark 2024-11-23 12:02:59 +05:30