跳到主要内容
ansicode
终端

Ghostty —— ANSI 转义码支持情况

Ghostty 是 Mitchell Hashimoto(HashiCorp 创始人)开发的跨平台终端模拟器,使用 Zig 编写,经过三年内部测试于 2024 年 12 月首次公开发布。其设计理念是让终端在每个操作系统上都拥有原生体验 —— macOS 上的 AppKit、Linux 上的 GTK4 —— 同时不牺牲任何现代终端功能。没有 Electron,没有 Web 技术栈,用户层面也没有把 Rust 与 Zig 的语言之争烙在体验里。

Ghostty 开箱即用地实现了相当激进的现代终端协议子集:完整 xterm-ctlseqs SGR、完整 OSC 8 超链接、完整 SGR 4:1–4:5 扩展下划线、kitty 图形协议、kitty 键盘协议(CSI > 1 u)以及 DECSET ?2026 同步输出。Sixel 通过 libsixel 支持。配置文件位于 `~/.config/ghostty/config`,为扁平的类 INI 格式,每行一个键,无嵌套。

最近更新

特性支持情况

该终端在站点统一矩阵跟踪的 15 个特性上的表现。点击任意特性名可查看其在全部终端上的完整支持情况。

  • 8 种基础色(30–37 / 40–47)SGR 30–37 前景,40–47 背景。
    支持
  • 高亮(aixterm)色(90–97 / 100–107)aixterm SGR 扩展。
    支持
  • 256 色调色板(38;5;n / 48;5;n)xterm 256 色扩展。
    支持
  • 24 位真彩色(38;2;r;g;b)1670 万直接 RGB。设置 $COLORTERM=truecolor。
    支持
  • 斜体(SGR 3)斜体文本属性。
    支持
  • 扩展下划线(4:1–4:5)波浪/点/虚下划线样式。
    支持
  • 删除线(SGR 9)文本中央的水平线。
    支持
  • OSC 8 超链接内联可点击 URI。
    支持
  • 备用屏幕(?1049h)全屏应用缓冲区。
    支持
  • 鼠标跟踪(SGR ?1006)鼠标点击/拖拽事件。
    支持
  • 括号粘贴(?2004)粘贴文本被 ESC[200~/ESC[201~ 包裹。
    支持
  • 焦点事件(?1004)获得焦点时 ESC[I,失去时 ESC[O。
    支持
  • Sixel 图形DEC sixel 内联位图。
    支持
  • Kitty 图形协议PNG/RGB 内联图像和动画。
    支持
  • 同步输出(?2026)原子化帧更新,避免撕裂。
    支持

在此终端可用的序列

该终端能完整处理的转义序列对应的权威参考页。每条均链接到完整页面,含字节形式、规范出处与多语言示例。

细节与版本说明

在生产中使用某序列前应知晓的、该终端特有的注意事项。

Linux GTK4 版本通常落后 macOS 1-2 个小版本
Ghostty 的 macOS 应用先行构建;Linux GTK4 构建(Fedora COPR、AUR、Flathub)随后跟上。ANSI 转义序列层面功能完全对等,但窗口装饰细节(透明度、毛玻璃、标签栏样式)与 shell 集成抛光(提示符重绘时的光标定位)会先在 macOS 上落地。CI 与开发容器场景下 Linux 构建已足够;若要与文档截图保持一致,请同时核对两端。
扁平的类 INI 配置 —— 每行一个键,无嵌套
`~/.config/ghostty/config` 是一组 `key = value` 行(如 `font-family = JetBrains Mono`、`theme = catppuccin-mocha`)。没有 TOML 表、没有 Lua、没有 JSON。列表通过重复键表达 —— `keybind = ctrl+a>z=close_window` 接 `keybind = ctrl+a>x=new_tab`。`+macos` 前缀键仅在 macOS 生效;`+linux` 前缀键仅在 Linux 生效。运行 `ghostty +show-config --default` 可查看所有已文档化的键及其默认值。
kitty 键盘与图形协议默认启用
Ghostty 默认启用 kitty 渐进式键盘增强(CSI > 1 u 启用、CSI < u 关闭)以及 kitty 图形协议(APC G ... ST)。neovim 0.10+、helix、zellij 会通过 DA3 / DA1 与 kitty 图形查询自动识别并升级 —— 因此 Ctrl-Shift-字母 组合、精确修饰键上报、内联图像预览无需配置即可使用。未实现 kitty 协议的程序也不会受影响(Ghostty 会返回正常的 xterm 兼容默认值)。
同步输出(?2026)及基于 libsixel 的 Sixel
DECSET ?2026h / ?2026l 原子帧模式在所有平台均支持,无需配置开关。Sixel 渲染依赖系统的 libsixel:macOS 上通过 `brew install libsixel` 安装(Ghostty 动态链接);Linux 发行版若打包了 libsixel(Debian / Fedora)则随依赖自动安装。若系统缺少 libsixel,Sixel 序列会以乱码形式输出 —— 请通过 DA1(`CSI c` 应答含 `4`)检测,而非假设可用。

参考资料

其他已有专页的终端