windows - 从命令行调用 emacsclientw 的问题

标签 windows emacs command-line org-mode

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

这是命令行调用,它工作正常,除了缓冲区在屏幕上的 Emacs 框架中保持打开状态,即使在 kill-buffer 函数之后(尽管它说'pushed to the 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 文件后尝试重做相同的命令,是否有一些方法可以阻止它弹出提示?

最佳答案

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

关于windows - 从命令行调用 emacsclientw 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6512565/

相关文章:

c++ - 在这种情况下我应该使用静态吗

java - 运行此 Java 应用程序时,非分页内核内存疯狂增加

emacs - 在 emacs 中更简单的大纲导航

java - 带有 list 的 IOException : 'Invalid header field; when creating . jar 文件

c# - 在命令提示符下编译/执行 C# 源文件

c++ - Windows 控制台中未显示 unicode 输出

c++ - 在 C++ 应用程序 : gethostbyname() failing 中检查互联网连接的可靠方法

emacs - emacs值得学习吗?

shell - 使用预定义的 lisp 代码从 shell 启动 emacs

unit-testing - 如何从命令行运行 JUnit 测试用例