我想使用SourceCodePro
作爲我的默認字體,但它並不涵蓋範圍內的波斯語字符,例如#x0600
直到#x06FF
。 我試過這樣的東西如何在emacs中爲某些utf-8字符使用不同的ttf字體?
(set-fontset-font t
'ascii
"Source Code Pro-12")
(set-fontset-font t
(cons (decode-char 'ucs #x0600)
(decode-char 'ucs #x6FF))
"Roya-13")
但它沒有奏效。 我也嘗試過使用fontset-standard
和fontset-default
這樣
(set-face-font 'default "fontset-default")
(set-fontset-font "fontset-default"
'emacs (font-spec :name "Source Code Pro"))
(set-fontset-font "fontset-default"
'iso-8859-1 (font-spec :name "Source Code Pro"))
(set-face-attribute 'font-lock-comment-face nil
:family "Inconsolata" :height 140)
(set-fontset-font "fontset-default"
'(#x0600 . #x06FF) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
(set-fontset-font "fontset-default"
'(#x0750 . #x075F) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
(set-fontset-font "fontset-default"
'(#x08A0 . #x08FF) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
(set-fontset-font "fontset-default"
'(#xFB50 . #xFDFF) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
(set-fontset-font "fontset-default"
'(#xFD70 . #xFEFF) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
(set-fontset-font "fontset-default"
'(#x1EE00 . #x1EEFF) (font-spec :name "Roya:pixelsize=16:foundry=farsiweb:weight=normal:slant=normal:width=normal:scalable=true"))
這也不能工作。
更新:使用`後使幀函數使之成爲工作 感謝指導意見@legoscia我
(defun zzgraph/fix-fontset (&optional frame)
(set-fontset-font "fontset-default" 'arabic "Roya"))
(add-hook 'after-make-frame-functions 'zzgraph/fix-fontset)
[這裏](http://superuser.com/a/778348/4542)和[這裏](https://github.com/legoscia/dotemacs/blob /master/dotemacs.org#fix-the-display-of-emoji)是爲我工作的片段。 – legoscia
@legoscia謝謝!第二個工作正常。所以我們在製作新幀時總是必須掛鉤!這很奇怪,並且它對latin腳本不起作用,因爲我使用'(添加到列表'默認幀alist'(字體。「源代碼Pro」))'在函數之外來改變默認面對於拉丁字符 –
@legoscia您能否讓您的評論成爲答案?你也有什麼想法,爲什麼使用'後make-frame-functions'是必要的?它與在守護進程模式下運行Emacs有什麼關係? –