趙健的技術筆記

Ghostty 終端機 Fira Code 字體中文標點(問號? 嘆號!)顯示異常的解決方法

技術 約 1013 字 · 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)。

分享:

評論