Mitchell Hashimoto
bf30753657
terminal/kitty: handle case where both offsets are in one grid cell
2024-07-29 18:57:31 -07:00
Mitchell Hashimoto
d510bb4497
terminal/kitty: adjust middle rows for image offsets
2024-07-29 17:26:57 -07:00
Mitchell Hashimoto
0c81ca44b8
terminal/kitty: do not render blank virtual placement cells
2024-07-29 14:52:09 -07:00
Mitchell Hashimoto
39b915ac25
terminal/kitty: handle width-stretched
2024-07-29 14:42:27 -07:00
Mitchell Hashimoto
5e9b871028
terminal/kitty: unit tests for unicode placements
2024-07-29 14:15:51 -07:00
Mitchell Hashimoto
359458b96a
terminal/kitty: switch to new placement math
2024-07-29 10:52:10 -07:00
Mitchell Hashimoto
0ebf14fd44
terminal/kitty: working on moving placement math here for testing
2024-07-29 10:39:18 -07:00
Mitchell Hashimoto
266033670d
terminal/kitty: support cells with no diacritics
2024-07-25 21:32:45 -07:00
Mitchell Hashimoto
91a6e70d1b
terminal/kitty: extra placement tests
2024-07-25 21:32:45 -07:00
Mitchell Hashimoto
1786502f15
terminal/kitty: working runs
2024-07-25 21:32:45 -07:00
Mitchell Hashimoto
cf6463fec0
terminal/kitty: preparing to build runs of placements
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
7c6ae90300
terminal/kitty: implement high bit image id parsing
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
578bfc8d23
terminal/kitty: parse image/placement id from style
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
13df93a1d0
temrinal/kitty: really basic row/col diacritic decoding
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
e656fe3b79
terminal/kitty: starting virtual placement iterator
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
bb1a9bf532
terminal/kitty: rename diacritics to unicode
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
f71afcab95
terminal/kitty: diacritic small tests
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
358b4ca896
terminal/kitty: parse relative placement fields
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
2c0f9bfc28
terminal: cell returns empty for Kitty placeholder
...
So we don't render the replacement char
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
7d9e50353b
terminal/kitty: add virtual placeholders placements
2024-07-25 21:32:44 -07:00
Mitchell Hashimoto
a5c382633f
terminal/kitty: placements support location enum (only pin for now)
2024-07-25 21:32:43 -07:00
Mitchell Hashimoto
d29073d999
terminal/kitty: add graphics diacritics file
2024-07-25 21:32:43 -07:00
multifred
72c672adb7
Fix multiple deprecated names for zig lib/std
2024-07-22 00:07:17 +02:00
Mitchell Hashimoto
360e4f690f
terminal/kitty: change graphics base64 decode to use simdutf
2024-07-16 20:21:09 -07:00
Mitchell Hashimoto
3fc08aa660
terminal/kitty: intersect cell deletion is 1-based
2024-07-05 19:08:33 -07:00
Mitchell Hashimoto
44c95cbf7d
terminal/kitty: delete by column/row is one-indexed
2024-07-05 18:59:21 -07:00
Mitchell Hashimoto
f4eea71859
terminal/kitty: image dimensions off by one fix
...
We weren't counting the original x/y as width 1.
2024-07-05 18:58:56 -07:00
Mitchell Hashimoto
53423f1071
0.13 conversions
2024-06-24 15:16:24 -07:00
Mitchell Hashimoto
3f16234f72
terminal: Coordinate uses CellCountInt
2024-04-26 20:52:08 -07:00
Qwerasd
04ec859925
terminal/kitty_graphics: update tests
...
Kitty Graphics command structures have been changed to hold decoded payloads not base64 strings.
2024-03-31 22:28:53 -04:00
Qwerasd
ca4b55b486
terminal/kitty_graphics: ignore base64 padding
...
Also move all base64 decoding to inside of the command parser.
2024-03-31 21:09:37 -04:00
Qwerasd
5dee7e1430
terminal/kitty_graphics: update outdated comments
2024-03-31 19:29:56 -04:00
Mitchell Hashimoto
d7ee705a7a
terminal/kitty: calculate cell height more efficiently
2024-03-22 20:28:01 -07:00
Mitchell Hashimoto
49e8acbcd2
core: configurable scrollback limit
2024-03-22 20:27:59 -07:00
Mitchell Hashimoto
9c2a5bccc1
terminal: page size should be accounted every creation
2024-03-22 20:27:52 -07:00
Mitchell Hashimoto
4c4d5f5a89
terminal/kitty: graphics exec ported
2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
25d84d697a
termio/exec: get compiler errors gone
2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
9b4ab0e209
zig build test with renamed terminal package
2024-03-22 20:27:44 -07:00
Mitchell Hashimoto
b7bf59d772
update zig
2024-03-22 11:15:26 -07:00
Krzysztof Wolicki
4add6889d8
Update to new compress.zlib API
2024-02-20 16:43:02 -08:00
Mitchell Hashimoto
793b657ca8
kitty-gfx: deletion should mark image state dirty to force redraw
...
Fixes #1537
2024-02-18 19:45:18 -08:00
Mitchell Hashimoto
6acf2b40af
terminal/kitty-gfx: mistaken logic
2024-02-12 19:35:02 -08:00
Mitchell Hashimoto
9193cfa6d2
style nit
2024-02-12 19:31:58 -08:00
Nameless
28ff9f7310
bug: std.os.realpath on non-windows asserts no nulls, make an error
2024-02-12 19:31:17 -08:00
Jonathan Marler
e1996ad1e5
os: remove UB, tmpDir is returning stack memory on Windows
...
On Windows, the tmpDir function is currently using a buffer on the stack
to convert the WTF16-encoded environment variable value "TMP" to utf8
and then returns it as a slice...but that stack buffer is no longer valid
when the function returns. This was causing the "image load...temporary
file" test to fail on Windows.
I've updated the function to take an allocator but it only uses
the allocator on Windows. No allocation is needed on other platforms
because they return environment variables that are already utf8 (ascii)
encoded, and the OS pre-allocates all environment variables in the process.
To keep the conditional that determines when allocation is required, I
added the `freeTmpDir` function.
2024-02-10 21:09:05 -07:00
Mitchell Hashimoto
238361698b
kitty graphics: use internal ID for placements with ID 0
...
Fixes #1356 correctly.
This was previously fixed by #1360 which just assigned a random
placement ID. I asked the Kitty maintainer about this and this is not
the correct logic and the spec has been updated.
When a placement ID of zero is sent, we allow multiple placements but
use an internal, non-addressable placement ID. The issue with my
previous approach was someone with knowledge of internals (or luck)
could technically address the placement. This isn't allowed.
2024-01-24 22:17:13 -08:00
Mitchell Hashimoto
46dd6e6caf
kitty graphics: assign automatic placement ID if p==0
...
Fixes #1356
As stated in the code, the specification itself doesn't explicitly
specify this behavior (as far as I can tell), but testing in Kitty
results in this working and I believe this is how they do it.
2024-01-22 15:51:51 -08:00
Mitchell Hashimoto
7c8b156960
kitty images: support pngs with greyscale/alpha (bpp=2)
...
Fixes #1355
2024-01-22 14:32:27 -08:00
Mitchell Hashimoto
553d81afd1
terminal: enable kitty graphics commands on OpenGL
2023-11-19 21:39:30 -08:00
Krzysztof Wolicki
44a48f62f1
change unmodified var
s to const
s in anticipation of zig changes
2023-11-17 15:46:46 +01:00