【发布时间】:2014-03-24 16:52:35
【问题描述】:
我有一个使用打开文件的客户端运行的 emacs 守护程序。我理解 C-k 背后显示“缓冲区仍然有客户端”的概念,但是为什么当缓冲区仅在一个客户端上打开时会发生这种情况(我只有一个客户端打开)?
emacs 守护进程是否将缓冲区的 emacs 服务器副本视为另一个客户端副本?
【问题讨论】:
标签: emacs emacsclient
我有一个使用打开文件的客户端运行的 emacs 守护程序。我理解 C-k 背后显示“缓冲区仍然有客户端”的概念,但是为什么当缓冲区仅在一个客户端上打开时会发生这种情况(我只有一个客户端打开)?
emacs 守护进程是否将缓冲区的 emacs 服务器副本视为另一个客户端副本?
【问题讨论】:
标签: emacs emacsclient
客户端连接不是用C-k 关闭的,而是用C-x # 关闭的。所以实际上,当你点击C-k 时,你是在告诉 Emacs 在不关闭连接的情况下终止缓冲区。所以“开放客户端”就是您正在查看的那个。
【讨论】:
警告是为了防止您无意中关闭客户端连接并导致在等待过程中发生一些意外操作。例如,当 emacsclient 作为 git 或邮件的编辑器被调用时,关闭连接可能会导致提交或发送电子邮件。即使只有一帧打开,您也可能正在处理多个缓冲区并且不记得这个特定的缓冲区来自客户端请求。所以 emacs 显示警告说“你确定要杀死这个缓冲区吗?这也会关闭客户端连接。”
C-x # 是告诉 emacs “我知道这有一个客户端在等待它。我已经完成了它。请告诉客户端我完成了”并跳过警告。
【讨论】: