我正在使用Emacs/Cider启动clj REPL。我是通过先打开定义新命名空间的文件来做到这一点的。然后我使用cider-jack-in-clj
来启动REPL。REPL命名空间是“user”。我只能在REPL中使用完全限定的函数。如果在REPL中输入user=> (ns myns)
,它会按预期工作并更改命名空间。我希望能够自动化这一过程,以便每次从文件启动REPL时,REPL命名空间也会更改。
或者,只要我能使用非限定函数,我也可以不更改命名空间。
以下是我的文件顶部的示例,core.clj
(ns coresync.core
(:use [tupelo.core])
(:require [clojure.core.async :refer [chan >!! <!!]]))
在代码的Emacs缓冲区中,我能够获取所有非限定函数,但在REPL中,我需要使用
user=> clojure.core.async/chan
我在网上和论坛上搜索过,但尚未解决这个问题。如果这个问题已经有人问过而我错过了,请原谅。
谢谢