基本上我已经设置了 Emacs,因此它有一个特定于 GUI 的 elisp,但是当以守护程序模式启动它时,这不会进行评估。代码类似于:
;; gui.el
(when window-system
(progn
;; do stuff here
))
当我在命令行上运行 emacsclient -c 时,我希望重新评估这个文件(或者至少是其中的代码——可能是一个函数),因为我错过了所有的字体锁定和颜色- 主题很好(因为我将这些东西设置为仅在 GUI 存在时运行)。
最佳答案
您可以将代码放入钩子(Hook)中,以便在创建框架之前调用
(add-hook 'before-make-frame-hook 'my-gui-initialization-stuff)
在那个钩子(Hook)中,你可能想要有一行这样做
(remove-hook 'before-make-frame-hook 'my-gui-initialization-stuff)
这样你就不用一遍又一遍地进行初始化。
关于emacs - 当框架出现时,如何让 Emacs 评估文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2548673/