emacs服务器不能跨SSH会话持久化

时间:2013-10-01 01:07:11

标签: emacs ssh putty xming

我遇到意外关闭emacs服务器的困难。我通过SSH与PuTTY从Windows 7机器连接到ubuntu机器,使用xming处理x11窗口。这似乎与putty关闭连接的方式有关。

我使用emacs --daemon启动emacs服务器。然后我使用emacsclient -c连接到它。当我关闭生成的窗口时,emacs服务器会保持运行,我可以再次使用emacsclient -c重新连接。然后我可以关闭putty会话,重新打开它,然后重新连接。这就像我预期的那样。

当我在没有先关闭emacs窗口的情况下关闭SSH会话时出现问题。重新连接时,emacs服务器不再运行。这仅在x11版本的emacs运行时才会发生。如果我使用emacsclient -c -nw在终端中启动emacs,即使我在关闭PuTTY之前没有退出emacs,emacs服务器也会继续运行。

我不确定是什么原因造成这种情况,或者在哪里寻找麻烦 - 更多。

1 个答案:

答案 0 :(得分:0)

Ubuntu中默认的emacs二进制文件使用的Gtk库中显然存在一个错误。

如果你使用清晰的变体(例如emacs23-lucid)那么事情确实在游泳中起作用。我在重新启动之间连接,丢弃,重新连接......数百次。

我在文本模式或x11模式下重新连接,并为此设置简单的别名:

alias emt='TERM=vt100 emacsclient -nw'
alias emx='emacsclient -c'