是否可以根据 Emacs 中的语言以不同的方式更改字体大小?

是否可以根据 Emacs 中的语言以不同的方式更改字体大小?

我期待一种在 Emacs 中改变字体大小的方法。

我可以轻松更改“所有”字体大小,如下所示:

(set-face-attribute 'default nil :family "Consolas" :height 110)

但我想在不同的语言中以不同的方式更改字体大小。为了让日语稍微小一点,泰语稍微大一点,我这样写道:

(create-fontset-from-ascii-font "Consolas" nil "my")
(set-fontset-font "fontset-my" 'japanese-jisx0208 (font-spec :family "Meiryo") nil 'append)
(set-fontset-font "fontset-my" 'thai-tis620 (font-spec :family "Cordia New") nil 'append)

(add-to-list 'default-frame-alist '(font . "fontset-my"))
(setq face-font-rescale-alist '(("Meiryo" . 0.80)))
(setq face-font-rescale-alist '(("Cordia New" . 1.20)))

但它没有生效。如何才能在不同语言中改变字体大小?

答案1

我可以通过以下方式更改日语字体fontset-default

(set-fontset-font "fontset-default" 'han "STSong-24")
(set-fontset-font "fontset-default" 'kana "STSong-24")

我不确定为什么你的代码不起作用;我怀疑可能是因为我指定了一个脚本作为“目标”,set-fontset-font而不是字符集。你可以通过点击来查看字符的脚本C-u C-x =。似乎还有一个thai脚本。

相关内容