我想知道是否有办法在使用cider-connect
.
例如 :
我
lein repl
在项目目录上运行然后在 emacs 中使用
cider-connect
.
现在假设我(println "cider is amazing by the way")
在我的一个环处理程序的代码中,这只会在lein repl
发出请求时在我运行的控制台中打印。
我怎样才能在我的nrepl
缓冲区中也有这个输出?
很抱歉,我怀疑您无法按照您描述的方式执行此操作。输出将直接发送到该设备的控制台,而不是通过与 nrepl 相关的任何内容。如果您考虑到 nrepl 通常甚至不在同一台计算机上运行,这也是有道理的。(nrepl 中的“n”代表“网络”)。
也许您可以将该输出安排到tee
您可以获取的文件中?然后,您可以在cat
编辑该文件的 nrepl 缓冲区上启动一个线程。或者在 emacs 中有一个缓冲区来监视远程文件。
如果您通过 leiningen 开始,cider-jack-in
您应该在 repl 缓冲区中获得输出。
将其与远程设置一起使用的一种方法可能是调用C-u M-x cider-jack-in
并使用专门的服务器命令,该命令实际上将触发lein repl
远程机器上的命令(例如通过 ssh)——我还没有检查这是否真的有效,但我没有没有任何理由不应该这样做。如果您可以通过 tramp 访问代码,那么代码是否是远程的并不重要。