Commit Graph

1448 Commits

Author SHA1 Message Date
Kovid Goyal
203e9f6c58 Port wcswidth to use grapheme segmentation 2025-04-11 09:34:21 +05:30
Kovid Goyal
2cad589f1c Add tests for combining at screen edge 2025-04-11 09:34:21 +05:30
Kovid Goyal
4c2bd8ffb1 Implement zero width roundtripped chars in multicell segmentation as well 2025-04-11 09:34:21 +05:30
Kovid Goyal
f5e8de2e4f Implement grapheme segmentation in the terminal layer 2025-04-11 09:34:21 +05:30
Kovid Goyal
d1938cb060 Fix failing test 2025-04-08 13:07:59 +05:30
Kovid Goyal
7e3e567916 Dont use subTest as it doesnt work with retry_on_failure 2025-04-07 05:22:15 +05:30
Kovid Goyal
f578e8d25b Cleanup various test related things 2025-04-07 04:41:19 +05:30
Your Name
33167f2057 Change mouse_hide_wait to struct, and change mouse_show_* options to optional parameters for struct. mouse_show_* renamed to mouse_unhide_* 2025-04-04 11:22:56 +00:00
Your Name
464446e388 Prevent mouse cursor from showing on short, unintentional flicks 2025-04-04 04:33:47 +00:00
Kovid Goyal
66856e7b52 Use a multi-stage lookup table for grapheme segmentation 2025-03-31 21:51:28 +05:30
Arvin Verain
6d75f7cff4 test: Add method to easily set last_visited attributes 2025-03-28 22:38:19 +08:00
Arvin Verain
07f30122e6 test: Add more tests for cmd paging edge cases 2025-03-28 22:38:18 +08:00
Kovid Goyal
9e1601a9b5 Nicer way to include grapheme test data in Go tests 2025-03-27 03:20:27 +05:30
Kovid Goyal
f058c597ae Dont rely on hard links 2025-03-26 21:59:24 +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
2aa2607adc ... 2025-03-25 17:13:54 +05:30
Kovid Goyal
3e50588525 Add a test for PUA recog 2025-03-25 16:52:01 +05:30
Kovid Goyal
f57f3d9909 Fix #8464 2025-03-21 19:55:45 +05:30
Kovid Goyal
b853f3a986 Show timeout duration in error 2025-03-20 08:50:53 +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
fd8172c04d Fix a regression in the previous release that caused empty lines to be skipped when copying text from a selection
Fixes #8435
2025-03-12 16:47:13 +05:30
Kovid Goyal
8cbdd003e2 Make deleting test dir suring shell integration tests robust against fish 4 background daemon generating completions 2025-03-08 10:42:18 +05:30
Kovid Goyal
ac9ed921d7 Temp fix for failing fish integration test
fish >= 3.8 wants to send shell integration OSC 133 itself. However it
does not send the cmdline_url parameter, causing our integration tests
to fail. Temporarily fix by commenting out the tests for it.

Fixes #8385
2025-03-02 15:41:47 +05:30
Kovid Goyal
2907999131 Use the same algorithm for rendering box cells and font based cells
Should make things easier to change in tandem in future.
2025-02-19 17:05:43 +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
c4ef0a0eef Add another test 2025-02-19 05:26:03 +05:30
Arvin Verain
a5cafdd8e9 test: Add more tests for scroll_to_prompt, fco, and lvco 2025-02-19 00:30:04 +08:00
Kovid Goyal
8f44e16b89 Fix scroll_to_prompt after resize that causes prompt line wrapping not accurate
See #8334
2025-02-18 19:40:23 +05:30
Kovid Goyal
eb5a9bc6a3 ... 2025-02-18 19:02:32 +05:30
Kovid Goyal
6f57537f30 Fix failing test 2025-02-18 18:44:57 +05:30
Kovid Goyal
c520b0b1b9 Add test for PR #8322 2025-02-18 10:08:41 +05:30
Kovid Goyal
2caa3fc069 ... 2025-02-17 20:18:14 +05:30
Kovid Goyal
a7f76ee8f7 Fix #8339 2025-02-17 19:56:39 +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
e7a40300d1 Fix crash when rendering a cell with a large number of combining chars
Caused by kitty now supporting larger number of combining chars per
cell. Fixes #8318
2025-02-12 08:23:46 +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
5adc81e146 Skip colrv1 rendering on macOS 2025-02-03 11:06:41 +05:30
Kovid Goyal
d068a0a6de Add basic colrv1 rendering test 2025-02-03 11:06:41 +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
da1626090a Update codebase to Python 3.10 using pyupgrade 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