Commit graph

1288 commits

Author SHA1 Message Date
Kovid Goyal
948d2e6e9c
Spelling 2025-08-07 09:17:20 +05:30
Kovid Goyal
b0439d4183
Function to erase the last command and its output 2025-08-07 08:45:45 +05:30
Kovid Goyal
f61b15b284
Fix incorrect handling of VS16 when it causes char to wrap to next line and is part of a draw command with more characters following it
Needed to initialize full text loop state rather than just segmentation
state on wrap. Fixes #8848
2025-07-26 09:25:01 +05:30
Kovid Goyal
45b2678db1
Allow backspace to wrap cursor to previous line
Fixes #8841
2025-07-23 08:56:54 +05:30
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