Emacs 使用 Xft
Emacs 22 有新的 gtk 介面以及更進步的 unicode 支援,而使用 xft 來顯示字體的部份程式則進了 emacs-unicode-2 這個 branch,據說這會是 Emacs 23 的候選之一。
從 CVS 編譯好 emacs 23 之後,照著一些網路上的教學,的確讓英文的部份變成了 Xft 顯示的漂亮字型,但是中文部份仍然是使用醜醜的 bitmap (X font, 因為我沒有安裝中文字型所需要的相關檔案),網路上也甚少提及如何設定中文的 Xft 字型,大部份都還是用 X font。
其實很簡單,只要:
設定與設使用 Xft backend,把以下加入 ~/.Xresources 中
Emacs.FontBackend: xft在 ~/.emacs 中指定使用的中文字型
(set-default-font "Bitstream Vera Sans Mono-14") (set-fontset-font (frame-parameter nil 'font) 'han '("cwTeXHeiBold" . "unicode-bmp"))啟動 emacs
emacs-snapshot --enable-font-backend
“–enable-font-backend” 一定要加,因為預設沒有開啟除了 X font 以外其他任何 backend。
Update: 先前設定字型的部份,英文的設定會蓋掉中文的部份,現在已經修正。
※ 歷史上的今天- 確定了! - 2008
- Meme - 我的色彩 - 2008
- 用 meld 來做 merge - 2005
- 受傷了 - 2005

我不明白这一段该怎样去设定呢?比如我想用一个AR PL ShangHaiSun Uni字体,该如何去做呢? 我用的是Chinese-GB其它设定为utf-8 (set-fontset-font (frame-parameter nil ‘font) ‘han ‘(”cwTeXHeiBold” . “unicode-bmp”))
Kueihsing
5 Dec 06 at 7:28 pm
就把 “cwTeXHeiBold” 換成 “AR PL ShangHaiSun Uni” 就可以了。
Kanru
6 Dec 06 at 2:03 am
然而并末可行。
Kueihsing
6 Dec 06 at 2:33 pm
可能的原因: 1. 被英文字型的設定蓋掉,上面的方法已經更新。 2. 或是你打錯字了,應該是 “AR PL ShanHeiSun Uni”,或是打 “文鼎PL细上海宋Uni” 也可以的。
kanru
6 Dec 06 at 10:24 pm
这次是可以了!!!使用这个方法是可以设定成功的,期间碰到了几次”.emacs newer than .emacs.elc”的警告。
Kueihsing
13 Dec 06 at 4:12 pm