请问能在配置了Doom的情况下,再配置Vanilla Emacs吗?相当于两个版本共存

我目前日常使用Doom Emacs开发Java/Spring项目,出于想继续学习Vanilla Emacs,自己添加包和配置的目的,请教在本机已有Doom的情况下能不能再共存一个原生Emacs,我知道 emacs -nw -q可以打开原生Emacs,但是好像不能再使用额外的配置文件?大家知道这种情况有解决办法吗?

emacs 29 也支持 --init-drectory 启动参数

1 个赞

在启动emacs时指定home路径的地址就可多少个版本共存都行,runemacs.exe -q -eval "(setenv \"HOME\" \"d:/home/emacs.d/doomacs\") -l d:/home/emacs.d/doomacs/.emacs.d/init.el

加了 -q/-Q 加载的逻辑就不一样了。

你可以试试暂时把 ~/.emacs.d/init.el 清空,加入以下语句:

(add-hook 'after-init-hook
          (lambda ()
            (unless debug-on-error (toggle-debug-on-error))
            (error "Should see this")))

然后运行:

  1. emacs -q -l ~/.emacs.d/init.el
  2. emacs

会发现,1 是不会执行 after-init-hook 的。

除了 #2 楼所说的方法,如果你啥也不想改,不妨试试我这个脚本:

1 个赞

原来如此,感谢提醒,我一直都是加-q -l用的,我的配置里无after-init-hook,但rg搜了一下,很多包里有,发现magit里after-init-hook最多

好的,我试试

嗯,试了一下,真不错,立马就可以使用了