我使用emacs守护进程来保存我的emacs会话,即使我必须重新启动运行我的X服务器的机器,或者如果我想从另一台机器访问同一会话。这非常有效但是在恢复会话时我非常希望只运行“emacsclient --create-frame --no-wait”来连接守护进程而无需打开新文件。如果没有指定文件名,我就不会离开。
我尝试使用--eval来执行一个函数而不是打开一个文件,但是当评估完成时窗口就会消失。
(Emacs 23.1通过Debian GNU / Linux 5.0上的backports。)
答案 0 :(得分:13)
在emacsclient提供的帮助中,您有几个选择。首先,已经提到的是emacsclient -c
。这将尝试创建与emacs守护程序关联的框架。这样做的好处是,如果没有设置DISPLAY,那么它将在终端中打开emacs。
这为我们带来了下一个最佳选择(特别是如果您远程登录):emacsclient -t
即使设置了DISPLAY,也会强制emacs在终端模式下打开。
另请注意,您也可以从命令行设置显示。我经常在从VNC远程登录时使用它。完整命令为emacsclient -d DISPLAY -c
答案 1 :(得分:6)
emacsclient -c
适合我。
答案 2 :(得分:3)
emacsclient -n -e "(make-frame)"
-n
标志表示emacsclient
不等待,而emacs实例不会销毁该帧。
答案 3 :(得分:3)
如果您从命令行使用emacs,您可能还需要考虑emacsclient -t