Kovid Goyal
12c1b0cbdf
remove leftover debug prints
2025-07-20 21:45:36 +05:30
Kovid Goyal
2e92d610d5
Implement metadata based previews in choose-files
2025-07-20 09:31:17 +05:30
Kovid Goyal
fd20fd23bb
Use clean HOME and CONF and CACHE dirs when running Go tests
2025-07-09 13:29:33 +05:30
Kovid Goyal
d7c4d42f41
Fix #8794
2025-07-09 12:49:12 +05:30
Kovid Goyal
c681a999d5
Fix hyperlink id not being applied to wide cells
...
Fixes #8796
2025-07-09 12:14:09 +05:30
Kovid Goyal
eabddc2870
Report support for OSC52 write to clipboard in DA1
...
There are apparently some applications that want to only turn on OSC52
if they can be sure the terminal supports it.
https://github.com/contour-terminal/vt-extensions/blob/master/clipboard-extension.md
Seems harmless enough, though IMO the correct query mechanism for
runtime controllable settings is XTGETTCAP, but, let's be a
good citizen and co-operate. The overhead is not too large and I
have more important windmills to tilt at.
Fixes #8788
2025-07-07 08:45:58 +05:30
Kovid Goyal
75f10d140f
Fix off-by-one in code to nuke incomplete multicell chars in line
...
Fixes #8758
2025-06-27 11:35:18 +05:30
Jacob Komissar
9549618bc9
Escape user input in zsh integration's _ksi_preexec
...
Also fix a bug in one of the test assertions to make the test work.
2025-06-23 18:44:52 -04:00
Kovid Goyal
bca017fa4c
Fix #8741
2025-06-20 20:11:23 +05:30
Kovid Goyal
8e55cf7552
Fix #8731
2025-06-14 20:19:21 +05:30
Kovid Goyal
61fd8c4003
Fix #8682
2025-05-27 12:10:14 +05:30
Kovid Goyal
c861259e3b
Rename go module from kitty -> github.com/kovidgoyal/kitty
...
Makes the code more easily re-useable in other projects
2025-05-16 08:43:39 +05:30
Kovid Goyal
68b4c3dd6d
Fix ambiguous width and private use characters not being rendered when used with variable width text-sizing protocol escape codes
2025-05-12 05:21:51 +05:30
Kovid Goyal
1237f7667c
...
2025-05-03 10:47:03 +05:30
Kovid Goyal
7dc673e485
Add XFCE to the X11 compatibility matrix
2025-05-03 10:39:41 +05:30
Kovid Goyal
07cda6ac45
Add GNOME to the X11 compatibility matrix
2025-05-03 08:57:55 +05:30
Kovid Goyal
8d213bba04
Make test more robust against env
2025-04-30 05:50:05 +05:30
Kovid Goyal
b9326f5c94
Add some formatting to CLIParser error messages
2025-04-29 07:26:48 +05:30
Kovid Goyal
909b8747d3
Add launcher test for list style options
2025-04-28 13:55:36 +05:30
Kovid Goyal
14792aa60e
Allow partial option matches in C CLI parser as well
...
Matches behavior of Go parser and is nice to have
2025-04-28 12:43:09 +05:30
Kovid Goyal
15781435ae
Cleanup reading of argv from files
2025-04-28 09:54:57 +05:30
Kovid Goyal
5c9c8aa424
Add unit testing for launcher code
2025-04-28 09:25:25 +05:30
Kovid Goyal
b0ae88ada9
Wire up the codegen C cli parser
2025-04-28 09:20:11 +05:30
Kovid Goyal
1413d8fb85
Fix handling of --help and --version
2025-04-28 09:20:11 +05:30
Kovid Goyal
27c5b6aac5
Generate option parser in C for kitty CLI
2025-04-28 09:20:10 +05:30
Kovid Goyal
62699f6799
Get basic C cli parsing working
2025-04-28 09:20:10 +05:30
Kovid Goyal
3f00dc1c9e
Work on improving CLI parsing
...
Can now set bool values explicitly with =
Handle multi short flag args like -abc
Add unit tests for CLI parsing
Generate go code to serialize CLI options as a cmdline
TODO: Implement setting of bool vals in C and Go parsing code
TODO: Help/rst output should somehow indicate this feature
2025-04-26 09:01:54 +05:30
Kovid Goyal
2093fb1310
Fix handling of empty quoted string in shlex
2025-04-26 08:55:32 +05:30
Kovid Goyal
7bd7709685
Move parsing of macos-launch-services-cmdline into native code
...
Avoids expensive re-exec and simplifies various things. Much faster
for single instance usage.
2025-04-25 14:39:36 +05:30
Kovid Goyal
639ad3e8a6
Make shlex code re-useable in launcher
2025-04-25 09:35:42 +05:30
Kovid Goyal
76ac66fc8c
Implement various filesystem utility functions in C so they can be used in the launcher
2025-04-24 20:37:51 +05:30
Kovid Goyal
f0f5e53dbe
Fix failing test
2025-04-23 09:07:13 +05:30
Kovid Goyal
82e2fe82d6
Add a couple more gseg tests
2025-04-11 13:34:16 +05:30
Kovid Goyal
3f919cbc56
Specify the algorithm for splitting text into cells
2025-04-11 09:34:21 +05:30
Kovid Goyal
b32a5492c5
Add test for wrap with combining char
2025-04-11 09:34:21 +05:30
Kovid Goyal
c01a941fe7
Get the unicode grapheme seg tests passing on screen, with minimal modification
...
We ignore tests including ACII control codes and we modify the results
when there are grapheme breaks before zero width characters.
2025-04-11 09:34:21 +05:30
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
Kovid Goyal
ac32f91a2e
Implement rendering of selections that intersect multicell cells
2025-02-03 10:56:49 +05:30
Kovid Goyal
dc5037ff37
Add tests for multicell char split between history and line buffers
2025-02-03 10:56:49 +05:30
Kovid Goyal
561686c9d4
Refactor rewrap code, again
...
Now we do the rewrap of history and line buffers together. This is
faster and deals with multiline chars split between the two buffers
correctly. Also, considerably simpler code.
2025-02-03 10:56:49 +05:30
Kovid Goyal
97449dfddb
Cursor tracking tests
...
Also fix extra x movement for tracked cursors
2025-02-03 10:56:49 +05:30
Kovid Goyal
c4a32862d1
Implement restitch during rewrap
...
Faster, less code and gets us multicell handling during restitching for
free.
2025-02-03 10:56:49 +05:30
Kovid Goyal
b3c39f4921
Finish up the redraw multicell tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
001cc8009e
More multicell rewrap tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
decafb0d3f
More multicell wrap tests
2025-02-03 10:56:49 +05:30
Kovid Goyal
cf5f6e97e8
Add some basic tests for multicell rewrap
2025-02-03 10:56:49 +05:30
Kovid Goyal
cf2fffaf95
Fix continuation char marking when rewrapping historybuf
2025-02-03 10:56:49 +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
c67475271f
Remove box drawing python code
2025-02-03 10:56:48 +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
1707e603f3
Implement underline exclusion
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
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
Kovid Goyal
0fb49f4139
Switch to using an index for sprite tracking
...
Frees up two bytes in GPUCell. Doesn't require a minimum texture row
size. Makes a bunch of code faster. Index uses 31 bits which gives us
2,147,483,647 aka ~ 2 billion sprites.
2025-02-03 10:56:45 +05:30
Kovid Goyal
87dea95a0e
Fix rendering of scaled emoji
2025-02-03 10:56:45 +05:30
Kovid Goyal
27bcd96071
Tests for combining char on multicell
2025-02-03 10:56:45 +05:30
Kovid Goyal
06c428ba7b
Fix drawing multiple chars where the second or later char is on a multicell
2025-02-03 10:56:45 +05:30
Kovid Goyal
4a0086b241
Fix vertical_align serialization
2025-02-03 10:56:45 +05:30
Kovid Goyal
5c2c88858b
Implement reporting of multicell commands
2025-02-03 10:56:45 +05:30
Kovid Goyal
1aec299ad8
...
2025-02-03 10:56:45 +05:30
Kovid Goyal
42e93d8caa
More work on scaled font rendering
2025-02-03 10:56:44 +05:30
Kovid Goyal
3dca2687d8
Make font rendering tests use a text font rather than system font
2025-02-03 10:56:44 +05:30
Kovid Goyal
850dcec4d7
Allow multiple box rendering chars per cell
2025-02-03 10:56:44 +05:30
Kovid Goyal
073d5c7340
Add test for quarter blocks
2025-02-03 10:56:44 +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
Kovid Goyal
844d538e40
When drawing text, skip past multiline chars
2025-02-03 10:56:44 +05:30
Kovid Goyal
79a062466c
Fix render_box_cell test with odd block height
2025-02-03 10:56:44 +05:30
Kovid Goyal
35946f9386
Improve performance of processing wide chars
...
Store multi cell data in the CPUCell rather than in TextCache.
This sends the CPUCell size back to 12 but in benchmarks ASCII
performance is untouched and Unicode performace goes back to what it was
before multicell
2025-02-03 10:56:44 +05:30
Kovid Goyal
383e1f8f57
Work on scaled rendering for box drawing chars
2025-02-03 10:56:43 +05:30
Kovid Goyal
394404a1ab
Add multicell tests for various edit operations
2025-02-03 10:56:43 +05:30
Kovid Goyal
e10df382f8
Tests for erasing characters
2025-02-03 10:56:43 +05:30
Kovid Goyal
8f0d291500
Delete chars with multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
23bb053fb4
Insert chars with multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
1ed4a349be
Clearance of multicell tests
2025-02-03 10:56:43 +05:30
Kovid Goyal
5e861ea5ac
Start work on testing multicell commands
2025-02-03 10:56:43 +05:30
Kovid Goyal
b5dff921c4
Start work on multicell support
2025-02-03 10:56:43 +05:30
Kovid Goyal
4f0f9b9aff
Fix #8262
2025-01-27 21:13:45 +05:30
Kovid Goyal
d7ce3eb66e
Keyboard events: Fix turning on only the "Report all keys as escape codes" enhancement not reporting modifier+enter/tab/backspace using escape codes
2025-01-12 19:11:19 +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
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
dd249df5eb
Dont encode enter, tab and backspace when lock mods are set
...
Otherwise user cant type reset when num lock is set.
2025-01-01 06:10:47 +05:30
Kovid Goyal
909bccb807
When mapping a custom kitten allow using shell escaping for the kitten path
...
Fixes #8178
2024-12-31 12:13:17 +05:30
Kovid Goyal
24a195c7c7
Graphics: Fix deletion of images by id not working for images with no placements
2024-12-24 09:39:01 +05:30
Kovid Goyal
8facaf4fa0
Graphics: Fix deleted but not freed images without any references being incorrectly freed on a subsequent delete command
2024-12-18 09:25:06 +05:30
Kovid Goyal
33207a57ba
Add tests for consecutive conflicting variation selectors
2024-12-05 19:21:00 +05:30
Kovid Goyal
a4d2d933c9
Fix #8103
2024-12-05 19:19:15 +05:30
Kovid Goyal
8e388acab7
Add some cursor tracking tests
2024-11-27 20:33:56 +05:30
Kovid Goyal
778344a439
Fix enlarging window when a long line is wrapped between the first line of the scrollback buffer and the screen inserting a spurious newline
...
Fixes #7033
2024-11-27 20:08:27 +05:30
Kovid Goyal
cb2e1fcd04
Graphics protocol: Fix delete by number not deleting newest image with the specified number
...
Fixes #8071
2024-11-24 10:11:34 +05:30
Kovid Goyal
0eaf44d33d
Add tests for strip_csi with multibyte
2024-11-24 09:28:21 +05:30
Kovid Goyal
97e4625a82
...
2024-11-12 09:29:17 +05:30
Kovid Goyal
6d5a2b8ecd
Add a test that exercises the text_cache in Line code path
2024-11-12 09:16:45 +05:30
Kovid Goyal
5e36e0a324
Fix text_at
2024-11-04 09:10:07 +05:30
Kovid Goyal
30f4441fe5
Fix line_as_ansi
2024-11-04 09:10:07 +05:30
Kovid Goyal
bbd2df7e4d
Nicer error message on I/O error with child over pty
2024-10-29 06:01:35 +05:30
Kovid Goyal
002d0a0403
Preserve trailing blank line on resize always
...
No sense in restricting it to just lines marked as output and only on
main screen.
2024-10-19 14:15:45 +05:30
Kovid Goyal
66251f8fd5
Add test for previous bugfix
...
main screen should have trailing output line preserved when resized on alt screen
2024-10-19 14:02:06 +05:30
Kovid Goyal
b66d9332f9
...
2024-10-19 10:51:18 +05:30
Kovid Goyal
70d72b22d8
Graphics protocol: Clear any partially uploaded data for a chunked load when any delete command is received
...
Fixes #7968
2024-10-13 09:49:44 +05:30
Ihar Hrachyshka
927c8ff4d8
tests: apply os.utime to created symlinks too
...
Nanosecond precision is not universally available on all platforms. For
example, nixpkgs python is built using Apple SDK 10.12 that does not
have `utimensat`. Because of that, python `os.stat` falls back to
microsecond precision.
This patch applies `os.utime` with zeroed nanoseconds to symlinks
created by the test case, the same way as it is already applied to other
files tested for transfer.
2024-10-03 23:09:28 -04:00
Kovid Goyal
c3130419a7
Implement dynamic control of transparent background colors via escape code
...
Still have to implement it via remote control
2024-09-24 19:02:13 +05:30
Kovid Goyal
481153318b
Fix a regression that broke writing to the clipboard using the OSC 5522 protocol
...
Fixes #7858
2024-09-15 08:42:50 +05:30
Kovid Goyal
913ce58fe3
Make shlex_split always return a token
...
Matches behavior of split() so is therefore more intuitive
2024-09-02 17:30:18 +05:30
Kovid Goyal
0c1d239b5f
Exclude bypy/b from go test discovery
2024-08-23 11:27:54 +05:30
Kovid Goyal
b872bbff49
Get it building in a rootless container
2024-08-12 19:24:48 +05:30
Kovid Goyal
2b3f2258ff
More pyugrade to 3.9
2024-08-05 11:00:51 +05:30
Kovid Goyal
2c743dcdb2
Update sound support in desktop notifications spec
...
Add a short list of standard sound names.
2024-08-04 20:20:41 +05:30
Kovid Goyal
bd8162fa42
Add support for controlling the sound played with notifications
2024-08-03 13:46:38 +05:30
Kovid Goyal
adc9a61e2c
Add tests for id sanitization
2024-07-31 16:57:57 +05:30
Kovid Goyal
1f656eccbb
Fix tests for buttons functionality
2024-07-31 15:21:57 +05:30
Kovid Goyal
212d7accfc
Allow multiple types per notification
2024-07-29 20:52:54 +05:30
Kovid Goyal
4ba9fcaf37
Simplify streaming base64 decoder by using the streaming API of libbase64
2024-07-29 20:08:28 +05:30
Kovid Goyal
eb1bb493a7
Ensure icon cache is cleared at exit
2024-07-29 15:24:18 +05:30
Kovid Goyal
ad48ecad40
Implement handling of icon names on Linux
2024-07-29 14:39:20 +05:30
Kovid Goyal
6e35289f8e
Allow sending icon data without an identifier
2024-07-29 10:41:05 +05:30
Kovid Goyal
eca487d15f
Add support for auto-expiring notifications
2024-07-28 20:14:39 +05:30
Kovid Goyal
d1a8772ac8
Add tests for alive queries
2024-07-28 17:27:09 +05:30
Kovid Goyal
083f158bbd
Implement a polling mode for close events
2024-07-28 15:35:22 +05:30
Kovid Goyal
2bffea2bdc
Implement updating of notifications
2024-07-28 12:25:35 +05:30
Kovid Goyal
59c175f312
Add test for filtering
2024-07-28 09:15:18 +05:30
Kovid Goyal
c59ab759a1
Allow well behaved applications to categorise notifications so that users can easily filter them out
2024-07-27 21:54:19 +05:30
Kovid Goyal
a473738001
Add tests for handling of icon metadata
2024-07-26 23:57:36 +05:30
Kovid Goyal
3d0747e713
Switch to SIMD accelerated base64 decoding for clipboard and notification requests
2024-07-26 23:57:33 +05:30
Kovid Goyal
ea112a6592
Start work on adding icon support to desktop notifications
2024-07-26 22:46:21 +05:30
Kovid Goyal
0813a3daff
Report if close events are supported in the query response
2024-07-25 18:59:31 +05:30
Kovid Goyal
f66a58ebe2
Decouple notification closed reporting from closing of notifications
2024-07-25 10:53:31 +05:30
Kovid Goyal
1c9d9e394c
Have close notifications indicate when notification is not found
2024-07-25 07:58:17 +05:30
Kovid Goyal
095e1917c1
Port the tests
2024-07-25 07:39:29 +05:30
Kovid Goyal
d68e49fe64
Start work on refactoring notifications handling
...
Makes the code cleaner and easily mockable for testing.
Also, add code to handle closing notifications on Linux.
2024-07-25 06:45:10 +05:30
Kovid Goyal
7741799f78
Start work on implementing closing of notifications
2024-07-23 22:05:05 +05:30
Kovid Goyal
9484814c3f
Specify that unknown payload types should be ignored
2024-07-23 21:14:29 +05:30
Kovid Goyal
786b7aa7c7
Add tests for i=0 in responses when no id specified
2024-07-23 20:45:52 +05:30
Kovid Goyal
c4baed73a2
Forgot about supporting multiplexers in the desktop notification query protocol
2024-07-23 20:35:26 +05:30
Kovid Goyal
3cf6db445b
Also respond about urgency support in the query response
2024-07-23 20:24:18 +05:30
Kovid Goyal
e14894888c
Desktop notifications protocol: Add support for querying if the terminal emulator supports the protocol
...
Fixes #7658
2024-07-23 20:16:25 +05:30
Kovid Goyal
a0dc062032
Fix render cache not being used
2024-07-23 15:07:41 +05:30
Kovid Goyal
8201f0dd0e
Move caching implementation to Python
...
Less code, more performant since the cache is used from Python.
And we can make the Go code a pure image format conversion filter.
2024-07-23 13:37:53 +05:30
Kovid Goyal
d08dcd92c7
Python wrapper to use image to RGBA Go code
2024-07-22 22:39:12 +05:30
Kovid Goyal
deff40df8a
New OSC 21 protocol for color control
...
Needs to be specced up
2024-07-22 10:57:13 +05:30
Kovid Goyal
0cf9a79760
A new option second_transparent_bg
...
Makes a second background color semi-transparent via background_opacity.
Useful for things like cursor line highlight in editors.
Fixes #7646
2024-07-21 20:22:31 +05:30
Kovid Goyal
21e19a90f4
Add test for multiple function handling
2024-07-18 22:25:02 +05:30
Kovid Goyal
9c75ea795d
Recognize more linear bezier curves
2024-07-18 22:25:02 +05:30
Kovid Goyal
39dfa75fe7
Add test for steps easing function value calculation
2024-07-18 22:25:02 +05:30
Kovid Goyal
e927f8da62
Add some tests for easing function parsing
2024-07-18 22:25:02 +05:30
Kovid Goyal
a4cdc1cdf3
Send current size when in band resize events requested even if mode is already on
2024-07-18 20:40:05 +05:30
Kovid Goyal
8d1eb75f9c
...
2024-07-18 20:34:57 +05:30
Kovid Goyal
06b5eff6e6
Add support for in-band window resize notifications
...
Fixes #7642
2024-07-18 20:32:33 +05:30
Kovid Goyal
2ba28171ab
DRYer
2024-07-16 10:45:46 +05:30
Kovid Goyal
c056df223e
Nicer way to prevent defrag
2024-07-16 07:43:50 +05:30
Kovid Goyal
9a50e453b2
Ensure defrag doesnt run when testing hole coalescing
2024-07-15 22:41:22 +05:30
Kovid Goyal
24e6dda0bc
disk-cache: Improve hole management
...
Make coalescing of neighboring holes robust. Speed up hole finding.
Cost is we replace a single array tracking holes with three hashmaps
tracking size->[pos] pos->size and endpos->size.
2024-07-15 21:13:59 +05:30
Kovid Goyal
2058cac203
Now the test should be fully robust
2024-07-15 09:29:30 +05:30
Kovid Goyal
a49bb8c5f9
DRYer
2024-07-15 09:24:19 +05:30
Kovid Goyal
638a4b19ee
...
2024-07-15 09:19:13 +05:30
Kovid Goyal
aaf7808328
Add explicit check for holes in test
2024-07-15 09:05:44 +05:30
Kovid Goyal
85f49c4310
...
2024-07-15 08:52:21 +05:30
Kovid Goyal
d93e91d115
Fix flaky test
2024-07-14 14:31:47 +05:30
Kovid Goyal
bc8c4ac3d6
migrate graphics code to verstable
2024-07-12 11:45:48 +05:30
Kovid Goyal
2955c3f7a7
Move hyperlink hashmap to verstable
...
Also speedup getting url for hyperlink id by using a second hash map for
it. Change behavior when there are too many hyperlinks to discard new
hyperlinks instead of remapping old hyperlink id and making some old
hyperlink wrong.
2024-07-12 09:11:00 +05:30
Kovid Goyal
f8e9040d86
Port LastResort test
2024-07-02 19:36:53 +05:30
Kovid Goyal
71f96b3c83
Package the standalone NERD font
2024-07-02 19:08:52 +05:30
Kovid Goyal
3a8362ca2b
Accomodate the fact that arch linux fira code ttf package excludes the variable version. Sigh.
2024-06-24 21:03:29 +05:30
Kovid Goyal
20c919e16e
Skip DejaVu font test
2024-06-24 09:08:05 +05:30
Kovid Goyal
18ab18d090
Fix matching against style names in presence of elision
2024-06-24 07:54:19 +05:30
Kovid Goyal
67a9ee680b
Automatically propagate features from regular face to the other faces when they are set to auto
2024-06-24 07:54:19 +05:30
Kovid Goyal
a69d71d416
Render font feature list in UI
2024-06-24 07:54:18 +05:30
Kovid Goyal
57edb412e6
Add tests to validate feature-from-spec
2024-06-24 07:54:18 +05:30
Kovid Goyal
10cae2c557
more tests
2024-06-24 07:54:18 +05:30
Kovid Goyal
679abf0e84
Ensure bold face is at least as heavy as regular face when auto selecting
2024-06-24 07:54:17 +05:30
Kovid Goyal
d205b147eb
Improve auto selection of variable faces
2024-06-24 07:54:17 +05:30
Kovid Goyal
b017cc0c1e
Handle variable fonts like cascadia code that dont have a postfix variation prefix name for some of their faces
2024-06-24 07:54:17 +05:30
Kovid Goyal
28f2919753
Fix medium face selection when more than family specified
2024-06-24 07:54:17 +05:30
Kovid Goyal
8ba6d5a296
CoreText: When finding medium face for a family prefer variable font if available
2024-06-24 07:54:16 +05:30
Kovid Goyal
5d725c4883
Skip test o older freetype
2024-06-24 07:54:16 +05:30
Kovid Goyal
67d535a5db
Add a test for dejavu sans mono
2024-06-24 07:54:16 +05:30
Kovid Goyal
7fd9bca845
IBM Plex Mono workaround is needed only under fontconfig
2024-06-24 07:54:16 +05:30
Kovid Goyal
c27c731ffb
Get font selection for the cascadia code variable fonts working
2024-06-24 07:54:16 +05:30
Kovid Goyal
7cdcbe6aeb
Better scoring for malformed fonts with weird weight ranges
2024-06-24 07:54:16 +05:30
Kovid Goyal
304ecdd8c2
Refactor scoring
2024-06-24 07:54:16 +05:30
Kovid Goyal
b06a2bb937
Add more font selection tests
2024-06-24 07:54:16 +05:30
Kovid Goyal
1780028420
fontconfig: Prefer semi-bold as bold weight even for system selection
2024-06-24 07:54:16 +05:30
Kovid Goyal
ea65ede572
fontconfig: Lift axes spec to named style
2024-06-24 07:54:16 +05:30
Kovid Goyal
31fe34810f
Test for font selection
2024-06-24 07:54:16 +05:30
Kovid Goyal
1a38b60463
URL detection: Fix IPv6 hostnames breaking URL detection
...
Fixes #7565
2024-06-21 05:53:21 +05:30
Kovid Goyal
beb42d571b
Forgot to use aspect ratio calculation when only one of r/c is specified for determining cursor position and image cell overlaps. Fixes #7479
2024-05-28 21:30:26 +05:30
Kovid Goyal
d9631cdedd
Port the notifications test to handle urgency
2024-05-16 21:45:15 +05:30
Kovid Goyal
1307c2345d
Fix macOS binary build failing because of a test
2024-05-11 08:37:51 +05:30
Kovid Goyal
c17d7614e1
Allow showing a more useful error message when wait_till fails
2024-05-11 08:33:47 +05:30
Kovid Goyal
ab2a4f7de6
Simplify loop used to process input from child in test pty
...
This might surface better errors than Timeout on the occassional test
failure.
2024-05-10 09:29:27 +05:30
Kovid Goyal
38799f3173
...
2024-05-10 09:24:10 +05:30
Kovid Goyal
468d0c69a6
Add tests for cmdline reporting in shell integration
2024-05-09 13:46:19 +05:30
Kovid Goyal
219e53826b
More efficient encoding for cmdline in the prompt marking escape code
2024-05-09 12:03:02 +05:30
Kovid Goyal
1e528fd299
DRYer
2024-05-09 11:55:17 +05:30