Shitty: 极速且内存不安全的终端模拟器
Show HN: Shitty – fast terminal. Memory-unsafe and faster than yours
Shitty 是一款专为低延迟设计的终端模拟器,虽然名字听起来有点“傻”,但性能却极其强悍。它采用 C++23 编写,在 Linux 上使用 Vulkan,在 macOS 上使用 Metal 进行原生渲染,将终端状态保留在 CPU 中。测试数据显示,其吞吐量远超 Alacritty、Kitty 和 Ghostty 等主流终端。Shitty 支持从 VT52 到现代 xterm 扩展的广泛协议,包括 Unicode 组合字符、24 位色彩及多种鼠标协议。对于追求极致启动速度和资源可预测性的开发者来说,这是一个值得尝试的硬核工具。
极速响应,内存不安全但比你的终端更快。
HN 评论区
148- mitchellh
Ghostty 的创作者在此。我一直是新终端模拟器的拥趸。我注意到你的基准测试是针对 Ghostty 1.3.1 进行的,这很公平,因为它是最新发布的版本,但我们的 I/O 吞吐量,特别是你测试的那些领域,在某些机器上已经提升了一倍多。所以如果你有机会,我建议你基于 `main` 分支重新跑一下基准测试。
我不知道它是否会比你的终端更快,但它肯定比 1.3.1 快得多。在我的 M4 MacBook Pro 上,ASCII 处理性能提升了约 2.8 倍。如果这个提升在你的基准测试中也能复现,那它应该会快过 shitty。不过,谁知道呢。我倒是更希望你能自己跑一下。
- 3eb7988a1663
Gutenberg 上的《白鲸记》副本大小是 1.2MB[0]。也就是说,测试中最慢的终端每秒只能显示区区 ~53 本《白鲸记》,而 shitty 能给你 ~98 本。
我不确定我每秒需要多少本《白鲸记》,但多几个选项总是好的。
- yjftsjthsd-h
> 可执行文件名为 st;桌面应用程序和图标名为 shitty
这与已经存在的 suckless st 冲突了。
另外,我对这些性能数据印象深刻,但我同时也觉得,我完全可以继续使用(至少)alacritty 或 ghostty,速度也不会慢太多。
- jcelerier
> Shitty 正在从导入的 GPL 基础代码迁移到仅 MIT 许可的代码库。它不打算将 GPL 保留为最终的项目许可证。
如果你没有代码的原始权利,这事儿根本做不到。这是 100% 的衍生作品,因此必须保留 GPL 许可证,哪怕你重写了每一行代码。
- p1necone
这很酷,但我得说——比起吞吐量,我其实更关心终端的按键到屏幕的延迟。很希望能看到这方面的数据。
- cyanregiment
沉迷于终端就像沉迷于鞋带一样。
很高兴看到你们还在坚持——总得有人来做这些事儿。
- joncp
干得漂亮!
不过我确实有点好奇,到了 2026 年,人们真的还会在意任何终端模拟器的性能问题吗?
我在 Terminal.app / zsh / tmux / vim 的环境里待了 15 年,从来没想过“这比我想要的要慢”。
- mellosouls
从这个项目幼稚的命名来看,很难让人对作者未来的专业性产生信心,而且这也不利于它在企业网络中的部署。
我完全支持粗俗的幽默,但这并不是那种(是的,我知道 -tty 这个惯例),这反而加深了“技术能力与社会能力成反比”的刻板印象。