正在打开每日关注
正在打开每日关注
Ghostty 与 libghostty 宣布完整支持 Kitty Graphics Protocol,覆盖图像放置、动画、滚动和多种传输方式。
Ghostty (and libghostty!) now has a 100% complete implementation of the Kitty Graphics Protocol. We support every feature, every option. We are the first terminal beyond Kitty to do this. Most terminals stop at basic image placements, then give up on the long tail of other features. Ghostty covers all of them: - Unicode placeholders (so it works in tmux) - Relative placements (so images can be positioned relative to other images) - Animation - Scroll region handling (so images scroll properly with terminal scroll regions) - All transport mediums: shared memory, temp files, etc. - etc... All of these features don't impact steady-state use (CPU or memory, besides raw code size). And for libghostty consumers, you can use the compile-time features flags to disable them completely. I read the spec myself a hundred times. I read Kitty's source code to validate behaviors (our implementation is markedly different, so no GPL violation). I also utilized agents, primarily for validation. I spun Fable and Sol in a loop for 3 weeks (pausing only when their dedicated subs exhausted limits) with a prompt to find mismatches between the spec, Kitty's reference implementation, and Ghostty. And now we're done. Ghostty is the most compliant Kitty Graphics implementation (ignoring Kitty itself of course). And, this is all in libghostty, so now everyone can be perfectly compliant.
是什么 这是一则关于 Ghostty 完整实现 Kitty Graphics Protocol 的工程发布。重点不是新增一个孤立的图片功能,而是把图像放置、传输、动画、滚动和兼容性等协议长尾一次性补齐,并将实现下沉到 libghostty,供其他消费者复用。
核心设计 实现覆盖 Unicode 占位符、相对放置、动画、滚动区域处理,以及共享内存、临时文件等传输方式。对于不需要全部能力的 libghostty 使用者,项目提供编译期特性开关,以代码体积换取更小的功能面,体现了完整性与可裁剪性的平衡。
关键洞察 这条信息的价值在于强调协议兼容性的验证方法:作者反复阅读规范,并对照 Kitty 参考实现,再让 Fable 与 Sol 持续运行数周,寻找规范、参考实现与 Ghostty 行为之间的差异。Agent 在这里承担的是高覆盖率验证角色,而非替代协议设计。
边界与风险 “100% 完整”仍属于项目方声明,实际兼容性还取决于终端、复用器和下游应用的组合测试。不同实现之间可能存在未记录的行为差异,编译期裁剪也可能让消费者误关掉必要能力。整体上,这是终端基础设施与研发效能内容,而非 UI 或交互设计案例。