Swank-clojure は優れたツールであるため、私は clojure 開発に Emacs を使用しています。しかし、slime-repl バッファーでエラーが発生すると、エラーは残りますが、修正したか、それ以上ではありません。
再生方法:
- leiningen を使用して clojure プロジェクトを作成します。
$lein new myproject
. - core.clj で、次の関数を定義します。
(defn f [] (+ 1 1))
- swank-clojure を開始します。
M-x clojure-jack-in
. - Slime-repl バッファーで、 を評価し
(f)
ます。もちろん返します2
。 - Slime-repl バッファーで、 を評価し
(g)
ます。もちろんエラーになるUnable to resolve symbol: g in this context
- その後、slime-repl バッファ内の何かを評価しようとすると、このエラーが常に表示されます。Cc Ck は役に立ちません。そのため、slime-repl バッファーでエラーが発生した場合は、常に Emacs.app を再起動します。
私の環境:
Mac OS 10.7.3、Cocoa Emacs 23.4.1、clojure-mode 1.11.5 (Marmalade から)、leiningen 1.7.0。