วิธีแก้ไขปัญหาเครื่องหมายวรรคตอนภาษาจีน (?!) แสดงผลผิดปกติใน Ghostty เมื่อใช้ฟอนต์ Fira Code
สาเหตุของปัญหา
Fira Code เป็นฟอนต์สำหรับเขียนโปรแกรมโดยเฉพาะ ไม่มี glyph ภาษาจีน เมื่อเทอร์มินัลต้องแสดงเครื่องหมายวรรคตอนแบบ full-width ของภาษาจีน (?!() อยู่ใน U+FF00–FFEF, 。 อยู่ใน U+3000–303F) Ghostty จะต้อง fallback ไปใช้ฟอนต์ CJK ของระบบ บน macOS ค่าเริ่มต้น fallback คือ PingFang แต่ฟอนต์สำรองนี้ไม่ได้ปรับขนาดตามฟอนต์หลัก อาจทำให้เกิดการเยื้อง baseline และความหนาของเส้นไม่สม่ำเสมอในบรรทัดเดียวกัน นี่คือพฤติกรรม font fallback ที่ทราบกันดีใน Ghostty บน macOS ทำให้เครื่องหมายวรรคตอนดูใหญ่และแปลกตา

วิธีแก้ไข
เปิดไฟล์การตั้งค่า Ghostty ผ่าน Ghostty > Settings... หรือทางลัด ⌘ + , แล้วเพิ่มบรรทัด font-family หลังจาก Fira Code เพื่อกำหนด PingFang เป็น fallback ฟอนต์หลัก
font-family = Fira Codefont-family = PingFang SC
font-family สามารถเขียนได้หลายบรรทัด บรรทัดแรกคือฟอนต์หลัก บรรทัดถัดไปทำหน้าที่เป็นสำรอง glyph ใดที่ Fira Code ไม่มี (เครื่องหมายวรรคตอนจีน ตัวอักษรจีน อักขระ full-width) จะถูกส่งต่อให้ PingFang จัดการ ทำให้การแสดงผลสม่ำเสมอ
โหลดการตั้งค่าใหม่ผ่าน Ghostty > Reload Configuration หรือทางลัด ⇧ + ⌘ + ,

ไฟล์การตั้งค่าโดยทั่วไปอยู่ที่ ~/.config/ghostty/config (บน macOS อาจอยู่ที่ ~/Library/Application Support/com.mitchellh.ghostty/config ด้วย)