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