以我的經驗,Emacs的不可靠讀取字體配置或Gnome的字體設置,所以你可能需要改變Emacs的字體渲染設置。
值得注意的是,在周圍gVim的字體中的着色像素指示gVim的使用子像素着色,而沒有在Emacs這些像素的顯示,它僅使用提示。沒有子像素渲染通常會使字體看起來模糊。
找出GVims喜好
找出什麼字體渲染設置的GVim使用。我認爲它需要Gnome的標準版本,所以安裝Gnome Tweaktool來檢查Gnome的字體設置。
告訴Emacs的關於您的字體首
現在創建一個.Xresources
文件,告訴Emacs的這些設置。以下是代表我的字體設置,根據你已經在侏儒Tweaktool發現適應它:
Xft.antialias: 1
Xft.hinting: 1
Xft.hintstyle: hintfull
Xft.lcdfilter: lcddefault
Xft.rgba: rgb
據我所知,lcdfilter
設置不侏儒Tweaktool可用,所以只是把它留在lcddefault
。
$ xrdb -merge ~/.Xresources
驗證設置加載:
$ xrdb -query | grep Xft
Xft.antialias: 1
Xft.hinting: 1
Xft.hintstyle: hintfull
Xft.lcdfilter: lcddefault
Xft.rgba: rgb
重新啓動的Emacs
與創建文件
- 退出Emacs與
C-x C-c
加載這些設置後
現在檢查字體是否現在看起來相同。請注意,GVim可能會使用不同的字體渲染器(例如Cairo,Harfbuzz或其他),因此無論如何需要一些細微的差異。
檢查設置是否永久
- 註銷您的桌面
- 再次登錄
- 使用上述
xrdb -query
命令來驗證您的字體設置
我忘了存在提到我沒有使用Gnome或任何其他桌面環境,我只運行OpenBox。但是,將這些Xft代碼行添加到我的.Xresources中也有竅門,謝謝。 – joonoro
@ user1749222我無所謂你使用的是哪個桌面環境。作爲Gtk/Gnome應用程序,GVim將從fontconfig或Gnome獲取其設置。 – lunaryorn
要進行實驗,您可以在命令行上傳遞Xft設置。這樣,您可以並排放置多個emacs框架,以便於比較。例如''emacs -xrm「Xft.hinting:1」-xrm「Xft.hintstyle:hintmedium」'''。當你找到你喜歡的設置時,將它們保存到'〜/ .Xresources' –