"这个Emacs会议有客户" - 我怎么找出原因?

Fal*_*lko 3 emacs

Cx Cc Emacs时不时会宣布"这个Emacs会话有客户端;无论如何退出?".

(我在Windows 7上使用Emacs 24beta,以防万一.)

我希望打开一些通过emacsclientw.exe打开的文件 - 但我没有看到任何文件.

(我有git config --global core.editor"/c/lang/emacs-24beta/bin/emacsclientw.exe")

有没有办法找出哪些缓冲区有客户端?(或者还有什么可以寻找的吗?)

Luk*_*vin 8

有没有办法找出哪些缓冲区有客户端?

当缓冲区具有客户端时,其server-buffer-clients变量的值将为非零.

我确信有更好的方法,但是这段代码应该给出客户端的缓冲区列表:

(require 'cl)

(defvar server-buffers nil)

(defun show-server-buffers ()
  (interactive)
  (setq server-buffers nil)
  (let ((original-buffer (current-buffer)))
    (loop for buf in (buffer-list)
      do
      (progn
        (switch-to-buffer buf)
        (if (and
         server-buffer-clients
         (buffer-live-p buf))
        (add-to-list 'server-buffers buf))))
    (switch-to-buffer original-buffer)
    (message "server-buffers: %s" server-buffers)))

  • Falko:您通常会使用`Cx #`而不是`Cx k`告诉服务器您已经完成了该缓冲区和客户端(当您启动客户端时,您应该会看到一条消息). (4认同)