2

我在 Win7 上调用 emacsclientw 来处理 Org 文件。我希望在处理后关闭 Emacs 缓冲区,以便如果在 Emacs 外部编辑文件并将调用重新发送到 emacsclientw,它将处理更改的文件。我希望在 emacsclient --eval 结束时终止缓冲区。如果我无法做到这一点,那么只需摆脱在 emacs 外部编辑文件后重做命令行调用时出现的“文件已更改,重新加载(是或否)”提示就可以了。

这是命令行调用,除了缓冲区在屏幕上的 Emacs 框架中保持打开状态外,即使在 kill-buffer 函数之后(尽管它说“推到 kill ring”),它也可以正常工作。我知道 kill-buffer 不应该在 emacs 客户端上做我想做的事。我也试过 server-edit 和 server-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 文件后尝试重做相同的命令,是否有某种方法可以阻止它显示提示?

4

1 回答 1

0

只是一个想法,您可以尝试 (server-edit) 或 (server-switch-buffer) 而不是 (kill-buffer)。

于 2011-07-05T14:45:54.160 回答