把下面的代码放到 init.el 中,并加入自己字体设置就能解决:
(defun my-after-frame (frame)
(if (display-graphic-p frame)
(progn
;; 中文字体设置放在这里。
)))
(mapc 'my-after-frame (frame-list))
(add-hook 'after-make-frame-functions 'my-after-frame)
我这边还要设置文件名的编码使用 gb18030
,才能正常打开带中文名称的文件:
(when (eq system-type 'windows-nt)
(setq file-name-coding-system 'gb18030))
参考这个帖子:
更新:
用楼下 @Shynur 提示的方法更好,只需要在 emacsclient 的窗口第一次启动时设置一次字体就好了。