赵健的技术笔记

Ghostty 终端 Fira Code 字体中文标点(问号? 叹号!)显示异常的解决方法

技术 约 1002 字 · 3 分钟 - 次阅读

问题原因

Fira Code 是纯编程字体,不包含中文字形。当终端要显示中文全角标点(?!()在 U+FF00–FFEF,在 U+3000–303F)时,Ghostty 只能临时回退到系统 CJK 字体。在 macOS 上默认回退到苹方,而这个回退字体不随主字体缩放、还可能出现基线偏移、同行粗细不一致等问题——这是 Ghostty 在 macOS 上已知的字体回退行为,所以标点看起来又大又怪。

Ghostty 终端 Fira Code 字体中文标点(问号? 叹号!)显示异常的解决方法

最终解决方案

通过 Ghostty > Settings... 或快捷键 ⌘ + , 打开 Ghostty 配置文件,在 Fira Code 之后追加一行 font-family,把苹方设为整体回退字体。

font-family = Fira Code
font-family = PingFang SC

Ghostty 终端 Fira Code 字体中文标点(问号? 叹号!)显示异常的解决方法

font-family 可以写多行,第一行是主字体,后续作为回退;凡是 Fira Code 没有的字形(中文标点、汉字、全角字符)都会统一交给 PingFang,渲染一致。

通过 Ghostty > Reload Configuration 或快捷键 ⇧ + ⌘ + , 应用设置并重新加载配置生效。

Ghostty 终端 Fira Code 字体中文标点(问号? 叹号!)显示异常的解决方法

配置文件路径一般在 ~/.config/ghostty/config(macOS 上也可能是 ~/Library/Application Support/com.mitchellh.ghostty/config)。

分享:

评论