0

我正在使用它,我认为我有一些奇怪的行为。我在项目根目录 () 打开一个 repl,在项目中用 vimfoons打开一个文件 ( ex.clj) 文件,然后评估以下内容(包括表单<,>Evalcpp表单内):

(clojure.core/in-ns 'foons.ex)

当我这样做时,似乎整个文件都被评估了,而不仅仅是我选择的表单,我认为这是不正确的。

foons.ex但是,如果我在启动的 repl 中更改为命名空间,并in-ns在 Vim 中执行相同的命令,我会得到预期的行为,并且只计算表单,而不是整个文件。

这是一个错误,还是我可能配置错误?

眼镜:

Java 13.0.1 Java HotSpot(TM) 64 位服务器 VM 上的 Leiningen 2.9.1

Clojure:1.10.0

nrepl:0.6.0

我还在这里打开了错误:https ://github.com/tpope/vim-fireplace/issues/373

4

1 回答 1

1

这个问题在我在这里提交的 github 问题中得到了回答:https ://github.com/tpope/vim-fireplace/issues/373

总结答案,它的行为符合设计。从问题:

如果我理解正确,它会按预期工作。Fireplace 的 :Eval 总是发生在当前文件的命名空间内,这意味着如果它还没有定义,我们需要预先要求它。

于 2020-01-20T01:00:05.013 回答