终端 reset 慢 1 秒竟因 1979 年机械打印机的 sleep,rauchg 用 AI 写 Zig 版 2ms 搞定
cramforce · x · 2026-08-25
rauchg 发现终端乱码后常用的 reset 命令出奇地慢,深挖后发现:1979 年 3BSD 的 tset 里有一个 sleep(1),本意是让机械打印终端「缓一缓」——这段代码沿用至今。
于是他让 AI 编码工具 𝚏𝚡 用 Zig 写了个替代品 rst 并开源:
- 约 2ms 完成,对比系统 reset 的约 1 秒
- 仅 162 KB,自解析 terminfo 数据库,不依赖 ncurses
- 与 tput reset 发出相同重置字符串,无 terminfo 时回退到 VT 转义序列
- 修复内核 TTY 状态(cooked 模式、回显、信号、CR/NL 映射等),保留用户自定义按键
他还写了篇explainer 讲 ncurses、tset、terminfo 与终端各种「被诅咒」的状态,并感叹技术栈能追溯到这么久之前、好设计的持久生命力。
「编程与Agent」频道最新
- Agent 自主运行 24 天:模型没那么重要 — nodo48 · 2026-08-25
- Bananastand:实时查询硬件 RAM 和硬盘当前市值的 CLI 工具 — dbreunig · 2026-08-25
- 一行指令让编码 Agent 迁移会话:跨 Claude/Codex/Pi 无缝切换 — xhluca · 2026-08-25
- session-migrate发布:一条命令把Claude Code会话迁到Codex等工具 — xhluca · 2026-08-25
- 图工程实战:从路网数据构建道路维护 AI Agent — MaryamMiradi · 2026-08-25
- Cursor 离职工程师详解 Composer 2 训练与内核设计 — eliebakouch · 2026-08-25