問題タブ [nrepl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
emacs - Emacs、Clojure、lein、および nrepl: *nrepl* バッファーが空白で表示される
で新しいプロジェクトを作成しましたlein。core.clj私はemacsで開きます。M-x clojure-mode、およびを必ず実行しM-x nrepl-enable-on-existing-clojure-buffersます。
それから私は実行M-x nrepl-jack-inし、ミニバッファで取得します
nREPL サーバーを起動しています...
次のようなメッセージが続きます。
接続しました。すべてを最適化すると、必ず不幸になります。-ドナルド・クヌース
バッファー名は です*nrepl*が、バッファーには Clojure Repl が含まれておらず、代わりに完全に空白になっています。
何かを入力すると(つまり、何でも)、次のようになります。
間違った型引数: integer-or-marker-p、nil
core.cljバッファに戻って を押すC-c C-lと、その結果、バッファ内の最後の関数の名前空間名がミニバッファに取得されます。そして、カーソルを関数定義の最後に置いて を押すと、次のC-x C-eようになります。
CompilerException java.lang.RuntimeException: Unable to resolve symbol: x in this context, compiling:(NO_SOURCE_PATH:1:1)
を使用して、依存関係のない新しい lein ディレクトリを作成しようとしlein new project-nameましたが、上記と同じ手順を試したところ、同じ結果が得られました。
他に何を確認できますか、または何が間違っていますか?
編集:追加情報
空の*nrepl*バッファーに何かを入力し、入力した内容を押しC-x C-eようとすると、ミニ バッファーに次のメッセージが表示されます。
Lisp サブプロセスはありません。変数「inferior-lisp-buffer」を参照
また、私は実行しています:
GNU Emacs 24.3.1
Java 1.6.0_27 OpenJDK 64 ビット サーバー VM 上の Leiningen 2.1.2
ubuntu - Emacs で nrepl が動作しない
私はUbuntuマシンで実行しています。emacs23インストールしましたが、 で動作するようにnREPL設計されているようですemacs24。ということで、アンインストールemacs23、インストールしemacs24ました。既存の.emacsファイルと.emacs.dディレクトリを削除しました。
次に、実行M-x package-list-packagesしてインストールclojure-modeし、nrepl.
で Clojure プロジェクトを作成し、デフォルトファイルlein new foobarを開こうとしました。core.clj自動的にClojureモードになりますが、M-x nrepl-jack-in(core.cljバッファ内で)入力すると、 と表示されますが、Starting nREPL server...という名前のバッファは表示されません*nrepl*(ドキュメントを読むと、期待される結果です)。Starting nREPL server...ミニバッファーに無期限に表示されます。
これで、という名前のバッファー*nrepl-server* が作成され、次のように表示されます。
しかし、これはあまり便利ではないようです (そのバッファーで何かを評価するようには見えませんか?!?)。
これについてグーグルを試しましたが、この問題を抱えていると思われる人を見つけることができませんでした。Clojure (特に) をいじってみたいと思いcore.logicますが、これは完全に非初心者です。:-(
emacs - emacs の *nrepl* バッファーで Clojure 名前空間を評価する
でプロジェクトを作成した後、emacs でlein new開いてを起動します。core.cljnrepl
バッファが表示され、次の*nrepl*ようになります。
わかりましたが、名前空間を変更したいのでC-c C-e、名前空間の式を評価することにしました。の式が次のcore.cljようになっているとします。
それでも、*nrepl*バッファでは何も起こりません。必要に応じて、名前空間式をバッファー内に直接入力して評価することができ*nrepl*、すべてがスムーズに実行されます。
私の質問は: を使用して名前空間式を評価できないのはなぜC-c C-eですか? そして、これが正常で正しい動作である場合、その理論的根拠と、望ましい動作を得るための elisp の回避策を知りたいと思います。
emacs - emacs、nrepl、M-. (nrepl-jump): プログラムを検索しています: 許可が拒否されました、解凍します
UPD: 私の OS は Win7 64 ビットです
M- でシンボルの定義にジャンプしようとすると、次のエラーが発生します。
Googleはその問題についてあまり役に立ちません。誰かが私を正しい方向に向けることができますか?
ここに、clojureに関連する私の設定の一部があります: