2012-08-09 59 views

回答

2

编辑:

嗯,我总算错过你的问题Clojure的标签。如果下面的解决方案适用于Clojure,我会非常惊讶,因为你可能知道Clojure社区很不幸(至少对于我们这些使用Clojure CL的人)保留了它自己的Slime版本。我不会删除答案,因为它可能对搜索此功能的CL程序员有所帮助。

除非对Clojure的,它允许复用在单插槽多个REPLs类似的解决方案,您可以也许只是开始用手第二斯旺克服务器(从*inferior-lisp*缓存),并通过slime-connect连接到它作为一种变通方法。 (不能对此进行测试ATM,因为我前一段时间停止使用泥和Clojure的。)


你试试slime-mrepl的contrib?我还没有实际使用它自己,但快速测试下CCL /赢/ Emacs的24

我测试了这样的工作对我来说:M-x slime,在REPL,开关缓冲区,M-x slime-new-mrepl进入(sleep 10)

2

请原谅我一个有点陈腐和非粘液的具体答案;它的优势在于它可以和任何clojure REPL一起工作。

当我事先知道我从REPL开始长时间运行的任务时,我开始使用future进行计算并在解除它之前使用future-done?进行检查。

+0

即使它不是直接解决这个问题的答案仍然有用,谢谢 – 2012-08-10 18:07:35

1

这可能不是回答你的问题,但它可能是有帮助的,只要(slime-communication-style):spawn认识到,评估完成使用C-x C-e总是酿出自己的线程,可以并行地无论是在REPL线程发生运行。输出(从println等)将出现在REPL缓冲区中。