8

私はEmacs Liveを使用しています。これは見た目が良く、多くの構成作業を節約できるからです。数日間は問題なく動作していましたが、今日、何かが壊れたようです。具体的には、オートコンプリートが機能しませんでした ( ac-nreplに問題がある可能性があると思います)。基本的に、私のミニバッファには「Namespace not found.」のみが表示されるようになり、実際のオートコンプリートはもう得られません (ファイルに既に存在する単語の補完のみ)。そして、実行するC-c M-nと、通常、オートコンプリートが開始されるたびに、空の *nREPL エラー* バッファーが表示されます。

編集:これは、nrepl-jack-in で nrepl-server を起動した場合にのみ発生します。既存のもの (例: lein repl で作成) に接続するだけで問題なく動作します。

4

2 に答える 2

8

問題Namespace not foundは、nrepl が現在のバッファーの名前空間を認識していないことです。nrepl-set-ns ( C-c M-n) の問題は、それが実行されていることin-nsであり、これは clojure コアの依存関係をもたらしません。

どちらの場合も、回避ns策は、バッファの s-expr だけを eval するか、バッファ全体を でロードすることnrepl-load-current-bufferです。

もちろん、nrepl-set-ns を変更して a を実行しnsたり、別の fn を追加したりできます。

于 2012-11-11T02:35:12.773 に答える
0

空の ns 宣言をバッファに追加するように見えます:

(ns example ...)

実行nrepl-set-nsはnreplの意図された使用法です。それぞれが独自のインポート、エイリアスなどを持つ複数の Clojure バッファーを操作できます。

.cljこの作業を自動化するファイルの作成/オープンにフックを追加することにしました。nsただし、変更時にフォームを更新する責任は依然としてあります。

于 2012-12-25T18:32:39.320 に答える