如何启动emacs服务器,如果它没有启动?
我想用emacsclient编辑Mutt中的邮件。
我在.emacs中添加了这个
(server-start)
并在.muttrc我补充说
set editor="emacsclient -nw %s"
看来他们工作。 当我开始第二个Emacs,它抱怨已经有一个服务器运行,所以它发出错误。 只有当服务器尚未启动时,如何确保(server-start)
?
谢谢
emacs守护进程可以以非常简单的方式自动启动。 只要添加到您的.bashrc / .zshrc /无论
export ALTERNATE_EDITOR=""
现在,当你调用emacsclient -t/-c
,如果服务器尚未运行,服务器将会启动(使用emacs --daemon
)。
我也发现这个shell别名方便
alias e='emacsclient -t'
请注意,由于Emacs 23是在守护进程模式下使用Emacs的首选方式。 (start-server)
现在大多已被弃用。
此代码仅在未运行时启动服务器:
(load "server") (unless (server-running-p) (server-start))
有点迟到的答案,但这里是适合我的解决scheme。 每当我启动emacsclient,我使用emacsclient -a '' -c
” -a ''
告诉emacsclient尝试连接到一个现有的服务器,如果没有服务器存在,启动一个然后连接到它。
通过一起避免这个问题
emacs --daemon
在任何shell或terminal,以便Emacs在后台运行。 这样emacsclient
总是很开心,因为总是有一个Emacs服务器连接到。
这是Emacs,还有一个function是只在需要的时候启动服务器,但现在我不能完全记得它的名字。 我非常高兴地使用--daemon
选项。