每当在Emacs中创建新帧时,我都需要运行命令。到目前为止,我一直在使用after-make-frame-functions
,但只在make-frame
创建的帧上调用此挂钩。 我实际上需要在emacsclient -c
命令创建新窗口时运行的东西。
有没有办法实现这个目标?
答案 0 :(得分:9)
我在理解你的问题时遇到了一些困难。 Emacs服务器在需要创建新帧时调用make-frame
,因此after-make-frame-functions
也应该在这种情况下工作。那你的实际问题是什么?
即使Emacs服务器没有创建新帧,您是否希望运行您的功能?如果是这样,请尝试将您的功能添加到server-switch-hook
以及after-make-frame-functions
。
server-switch-hook
是server.el
中定义的变量。文档:切换到Emacs的缓冲区时运行Hook 服务器