我试图在关闭它运行的缓冲区之前终止 Flymake 进程,尽管没有成功。以下是我尝试过的:
(defun haxe-kill-network-process ()
"Kill connection to Haxe compiler server and Flymake process in this buffer"
(when (equal major-mode 'haxe-mode)
(let ((proc (get-process haxe-compiler-process))
(fly-proc (get-buffer-process (buffer-name))))
(when proc
(delete-process proc)
(haxe-log 3 "Disconnecting from HaXe compiler server")
(flymake-mode -1)
(delete-process fly-proc)
(haxe-log 3 "Flymake process killed")))))
(add-hook 'kill-buffer-hook #'haxe-kill-network-process)
我得到这个输出:
从 Haxe 编译器服务器断开连接
由于致命状态 CFGERR 已关闭缓冲区 StripArray.hx 的 Flymake 模式,警告运行时发生配置错误(haxe --connect 127.0.0.1:1257 --cwd /home/wvxvw/projects/wafer/src -swf /home/ wvxvw/projects/wafer/bin/wunderwafer.swf -cp /home/wvxvw/projects/wafer/src -swf-header 800:600:31 -swf-version 10 com.wunderwafer.map.StripArray)
Flymake进程被杀死
但它并没有被杀死haxe-kill-network-process
——当我试图杀死运行进程的缓冲区时,它仍然提示我终止它。