我在win7上调用emacsclientw来处理一个org文件。我希望在处理之后关闭Emacs缓冲区,这样,如果在Emacs外部编辑文件,并且将调用重新发送给EmacClientw,它将处理更改的文件。我希望在emacsclient--eval结束时终止缓冲区。如果我不能得到,那就可以去掉“文件已更改,重新加载(是或否)”提示,当我在emacs外部编辑文件后重新执行命令行调用时得到该提示。
下面是命令行调用,它工作得很好,除了在屏幕上的emacs框架中,即使在kill buffer函数之后,缓冲区仍然保持打开状态(尽管它说“push to the kill ring”)。我知道kill buffer不应该在emacs客户机上做我想做的事情;我也尝试过服务器编辑和服务器kill buffer,但没有更好的结果。

c:/users/herbert/emacsclientw -n --eval ^"(let ((org-export-
babel-evaluate nil)) (progn (find-file \^"c:/users/herbert/desktop/org_files
/gtdsample.org\^") (org-export-as-html-and-open nil) (kill-buffer) ))^"

有没有办法让emacs中的缓冲区关闭?或者,如果我在emacs外部编辑gtdsample.org文件后尝试重做相同的命令,是否有某种方法可以阻止它弹出提示?

最佳答案

只是一个想法,您可以尝试(服务器编辑)或(服务器切换缓冲区)而不是(终止缓冲区)。

09-03 23:59
查看更多