问题应该是在升级doomemacs后出现的,比如如下命令报错
emacsclient -a -c all_projects.org
Waiting for Emacs…
ERROR: Error in a Doom startup hook: server-after-make-frame-hook, lambda, (invalid-function lambda)
直接用emacs命令打开是没问题的,之所以用emacsclient方式打开是为了在同一个emacs窗口里操作多个buffer
请问大家有什么解决办法或线索?
用笨办法在~/.doom.d和~/.emacs.d里搜索所有.el文件,注释掉server-after-make-frame-hook,然后doom build。
发现同样问题还在
同版本,我的也是system unit跑的服务 emacsclient
和emacs
执行都正常
要不重启服务试试?
systemctl restart emacs --user
直接重启服务试试,我一般doom upgrade
之后遇到奇怪的问题,一般重启服务就好了
1 个赞
真的可以了,太好了,谢谢!
请问这样重启服务和关闭emacs gui并且杀掉所有emacs进程再打开有区别吗?
emacsclient
连接的是system unit
里启动的服务,emacs
命令是独立的跑了一个
执行systemctl restart emacs
和kill所有再启动没啥区别 system restart的时候也是调用的emacs相关命令
ExecStart=emacs --fg-daemon
ExecStop=emacsclient --eval "(kill-emacs)"
1 个赞