1

これは非常に簡単な質問です。Emacs 22.2.1 (Ubuntu (9.04) リポジトリから) をインストールし、ホームページのリポジトリから Slime-current をダウンロードしました。

スライムに付属の指示に​​従ったところ、うまくいきました。スライムを起動して、期待どおりに使用できます。

しかし、lisp-mode (Mx lisp-mode) に入ると、REPL を操作できなくなります。Enter キーを押すと、カーソルが次の行に移動するだけです。

誰でもこれを修正できますか?

編集:

私がEmacsをどのように使用しているかという質問について。はい、Emacs を起動し、Mx slime でスライムに入ります。次にMx lisp-modeでlispモードに入ると、適切なシンタックスハイライトが得られると読みました。

構文の強調表示は提供されていましたが、以下で指摘されているように、これはテキスト ファイルの編集用であり、REPL との対話用ではありません。

また、最近、.emacs ファイルに次を配置すると、構文の強調表示が有効になることを読みました (機能しませんでした)。

; Syntax Highlighting
(global-font-lock-mode 1)

; Enable slime
(add-to-list 'load-path "/home/doug/Software/slime/")  ; your SLIME directory
(setq inferior-lisp-program "/home/doug/Software/ccl/ccl") ; your Lisp system
(require 'slime)
(slime-setup)

; Enable psvn
(require 'psvn)

だから私は私の質問を修正する必要があると思います。Lisp-mode は単に Slime の Lisp 機能を有効にするためのものではないので、Slime で構文の強調表示を有効にするにはどうすればよいでしょうか?

編集2:

答えはコメントで提供されました。

スライムを起動し、作業する新しいファイルを開く/作成します。これは、lisp-mode が使用される予定のバッファーです。

関数が書き込まれ、強調表示され、REPL に送信されます。出力は下部に表示されます。

両者は統合するのではなく、協力することになっています。

4

3 に答える 3

2

コメントから移動: 通常、大きな関数を直接 REPL バッファーに書き込むことはせず、別のバッファーに書き込んで、 を介して REPL に送信しますC-c C-c。Slime-repl-mode には独自の強調表示がありますが、目的が異なります。入力、出力、およびシステム メッセージを異なる色で表示します (黒地に緑の設定では、入力を緑で、システム メッセージを赤で、水色で出力されます)。

于 2009-05-20T14:16:10.060 に答える
2

lisp-modeREPL を含むバッファーに入っているようですね。もしそうなら、それはおそらくあなたが間違っていることです。REPL バッファーには、おそらく独自のモードがあります。

ドキュメントを見ると、Slime とやり取りする方法 (ほとんどの Emacs の下位プロセスと同様) は、現在の sexp または領域またはバッファーを評価するバインディングを使用することです。ドキュメントのこのページを参照してください。そのリンクのバインディングはどれも単純なRETキーではありません。つまり、REPL バッファーのモードを変更したと思われます。

もちろん、より多くの情報が役立ちます。

于 2009-05-20T05:15:41.093 に答える
1

Mx slime を実行すると、Slime が起動して REPL が表示されます (REPL を含むバッファーは、slime-repl-mode メジャー モードになります。この slime-repl-mode が REPL を駆動します。

Lisp-mode は、その説明によると、「GNU Emacs Lisp 以外の Lisp 用の Lisp コードを編集するためのメジャー モード」です。Lisp モードは、REPL 用ではなく、ファイルの編集用です。これは意図された動作です。

むしろ、なぜ REPL を Lisp モードに切り替えたいのでしょうか?

于 2009-05-20T05:16:48.783 に答える