alpha
Login
or
Join now
ptr.pet
/
ghostty
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
This repository has no description
Star
0
Fork
0
Atom
Configure Feed
Issues
Pull Requests
Commits
Tags
Feed URL
Select the types of activity you want to include in your feed.
Overview
Issues
Pulls
Pipelines
ghostty
/
src
/
terminal
/
apc
/
glyph
/
at
main
5 files
Mitchell Hashimoto
terminal: hook up glyph protocol glossary to terminal state
2mo ago
a979b869
AGENTS.md
terminal: hook up glyph protocol glossary to terminal state This hooks up the glyph protocol glossary to the terminal state. This effectively makes us handle the APC protocol for it both in Ghostty GUI and libghostty, although we didn't implement the renderer yet. The Zig/C libghostty API also has a way to disable the protocol but it is enabled by default. The memory usage is bound by the specification. For dirty tracking for the renderer, we're going with the simple route that any glyph change marks a coarse grained dirty flag and we'll [in the future] rebuild the entire state in the renderer. I think this will be fine for realistic workloads, but we can reassess in the future when we have real workloads.
2 months ago
Glossary.zig
Revert "font: add exact glyph protocol constraints" This reverts commit b661adad2ec9e32d739684b3051c733dbcd021ea.
2 months ago
execute.zig
terminal/apc: reject malformed glyph clear cp Glyph clear execution previously treated an unparsable cp option the same as an omitted cp option. That made inputs such as c;cp=zz behave like a bare clear request and remove every glossary registration. Track clear option presence separately from successful decoding. A present but malformed cp now returns a malformed_payload clear failure without mutating the glossary, while an omitted cp still clears all registrations.
2 months ago
request.zig
terminal/apc: reject malformed glyph register input Register parsing now validates the full register request shape before constructing the parsed command. Inputs that only contain the verb separator, such as `r`, `r;cp=e0a0`, or `r;foo`, now fail with InvalidFormat instead of reaching Register invariants guarded by asserts. Valid empty-payload requests still parse when they include the payload separator, allowing execution to report malformed_payload through the normal protocol response path.
2 months ago
response.zig
terminal: hook up glyph protocol glossary to terminal state This hooks up the glyph protocol glossary to the terminal state. This effectively makes us handle the APC protocol for it both in Ghostty GUI and libghostty, although we didn't implement the renderer yet. The Zig/C libghostty API also has a way to disable the protocol but it is enabled by default. The memory usage is bound by the specification. For dirty tracking for the renderer, we're going with the simple route that any glyph change marks a coarse grained dirty flag and we'll [in the future] rebuild the entire state in the renderer. I think this will be fine for realistic workloads, but we can reassess in the future when we have real workloads.
2 months ago