我希望 emacs 能够处理一些耗时的任务,而不阻塞输入。为此,我尝试了(其中插入的意思是用耗时的任务来代替)
(call-process "emacs" nil 0 nil "--eval=(insert \"a\")")
这有效。但是,当我想传递框架参数时,它不起作用:
(call-process "emacs" nil 0 nil "--geometry 30x5")
Emacs 显示“未知选项`--geometry 30x5”。
有什么想法可以使用调用进程来启动另一个具有精确帧大小的 emacs session 吗?谢谢!
最佳答案
听起来你可能想要 async.el ,它确实运行 Emacs 的附加实例来执行指定的处理。
(虽然我不确定您对可见框架的要求。)
点击链接了解所提供的所有其他功能的详细信息,但给出的最简单的使用示例(看起来可能适用)是:
(async-start
;; What to do in the child process
(lambda ()
(message "This is a test")
(sleep-for 3)
222)
;; What to do when it finishes
(lambda (result)
(message "Async process done, result should be 222: %s" result)))
关于emacs - 如何在 emacs 内部调用进程来启动 emacs,带参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21042984/