[!信息]
青小蛙写过:《 终端(Terminal)、TTY 和 Shell,还有 SSH,一次搞懂它们到底是什么?》
这里有一篇总结了终端在 Unicode 支持、性能、功能扩展方面的情况的文章:
重点探讨了两个维度:
- Unicode 宽度/字符测量问题(“The Width Problem”)——在等宽网格(monospace cells)中,如何正确映射不同脚本(语言)、emoji、合字(grapheme cluster)等。
- 性能与现代功能支持——包括 DEC Private Modes、sixel graphics、变体字体/可变大小文字、以及“文本尺寸协议”(text sizing protocol)等新进展。
简单说,就是:当你输入各种文字、符号或 emoji 时,终端能否正确显示、正确对齐、不乱行、不乱码。
| 终端模拟器 | Unicode 支持 | 性能表现 | 支持平台 | 备注 |
|---|---|---|---|---|
| ★★★★★ | ★★★★★ | macOS · Linux · Windows(早期) | 完整支持 Unicode,性能领先 | |
| ★★★★★ | ★★★★☆ | Linux · macOS | Unicode 表现几乎完美 | |
| ★★★☆☆ | ★★★☆☆ | Linux | 结果波动,状态管理问题 | |
| ④ Konsole | ★★★☆☆ | ★★★☆☆ | Linux · BSD | 部分 DEC 模式不一致 |
| ⑤ Contour | ★★★☆☆ | ★★☆☆☆ | Linux · macOS · Windows | 响应差异,非真正不支持 |
| ⑥ iTerm2 | ★★☆☆☆ | ★☆☆☆☆ | macOS | 高 CPU 占用,性能瓶颈 |
| ⑦ Extraterm | ★★☆☆☆ | ★☆☆☆☆ | Linux · macOS · Windows | Electron 架构导致渲染慢 |
| ⑧ GNOME Terminal | ★☆☆☆☆ | ★☆☆☆☆ | Linux · BSD · WSL | 基于 libvte,几乎无改进 |