1

我使用 Emacs 进行 clojure 开发,因为 Swank-clojure 是一个很棒的工具。但是,一旦我在 slime-repl 缓冲区上遇到错误,错误仍然存​​在,尽管我已修复它或者它不再存在。

繁殖方式:

  1. 使用 leiningen 创建一个 clojure 项目。$lein new myproject.
  2. 在 core.clj 中,定义一个函数(defn f [] (+ 1 1))
  3. 开始一个时髦的clojure。M-x clojure-jack-in.
  4. 在 slime-repl 缓冲区上,评估(f). 当然它会返回2
  5. 在 slime-repl 缓冲区上,评估(g). 当然会出错Unable to resolve symbol: g in this context
  6. 之后,当我尝试评估 slime-repl 缓冲区中的任何内容时,总是会出现此错误。Cc Ck 没有帮助。因此,当我在 slime-repl 缓冲区出现错误时,我总是重新启动 Emacs.app。

我的环境:

Mac OS 10.7.3,Cocoa Emacs 23.4.1,clojure-mode 1.11.5(来自果酱),leiningen 1.7.0。

4

1 回答 1

3

为了确认错误并关闭调试器,点击Q调试器窗口。(除了可用的重新启动之外,可能还有重新QUIT启动,但这至少应该始终有效。)

于 2012-02-15T18:49:01.917 回答