doom packages中没有cnfonts

doom首次安装后, 从package-list中安装了cnfonts. 将相关的设置添加进.doom/config.el

重新启动, 提示找不到cnfont package,

想再重新安装时, 从package-list却cnfonts这个包.

重新设置库 Getting Started - MELPA

推荐 Doom 官方的包安装方式,在 packages.el 中:

(package! cnfonts)

然后在 config.el 中:

(def-package! cnfonts
  :init 
  (do-something)
  :config
  (do-something)
)

最后别忘了在命令行执行 doom refresh。

关于 Doom Emacs 的配置可以看我之前录的一个视频:Hacking log #001 | 编写 Doom Emacs private module_哔哩哔哩_bilibili

1 个赞

我只想安装, 然后enable,

下面的:init : config是做什么?

多读文档,def-package! 是 Doom Emacs 自定义的 macro,和 use-package 类似。

另外 SPC f e 可以查看 Doom Emacs 的源码,刚开始的时候可以照着源码来写。

1 个赞

谢谢, 就解决一个安装cnfonts的具体问题而已. 不需要读文档.

doom中用cnfonts图标会不会乱码?

对,会的,所以我没有在doom中用cnfont,而是自己定义中英文字体来对齐

这也是我在Centaur中去掉cnfonts的原因。

主要是doom modeline无法解决cnfont加载之后的乱码问题,好像spaceline搭配cnfont是没问题的

浅尝辄止 不求甚解

使用下面的代码可以解决中英文等宽问题,使用的字体是 Sarasa Mono。

来源:emacs配置_xhcoding的博客-CSDN博客

(setq doom-font
      (font-spec :family "Sarasa Mono SC" :size 18 :weight 'normal))

(after! doom-big-font-mode
  (setq doom-font
        (font-spec :family "Sarasa Mono SC")))

;; https://blog.csdn.net/xh_acmagic/article/details/78939246
(defun +my/better-font()
  (interactive)
  ;; english font
  (if (display-graphic-p)
      (progn
        (set-face-attribute 'default nil :font (format   "%s:pixelsize=%d" "Sarasa Mono SC" 18)) ;; 11 13 17 19 23
        ;; chinese font
        (dolist (charset '(kana han symbol cjk-misc bopomofo))
          (set-fontset-font (frame-parameter nil 'font)
                            charset
                            (font-spec :family "Sarasa Mono SC")))) ;; 14 16 20 22 28
    ))

(defun +my|init-font(frame)
  (with-selected-frame frame
    (if (display-graphic-p)
        (+my/better-font))))

(if (and (fboundp 'daemonp) (daemonp))
    (add-hook 'after-make-frame-functions #'+my|init-font)
  (+my/better-font))

不是和spaceline没冲突,是cnfonts对spacemacs作了一些hack。从原理上讲,cnfonts覆盖了不少字体图标和符号,造成了冲突。解决不是没办法,但是很麻烦,索性不用了。

请问哪里乱码?我现在正在用doom和cnfonts,没发现哪里乱码呀?能否发个截图或告诉我下如何复现乱码可以不?