2011-11-02 14 views
14

Clojureで私の最初のステップをやっていますが、何らかの理由でアップ/ダウンキーでREPLのコマンド履歴を他の言語のREPLと同様に実行することができません。 Clojure REPLはコマンド履歴にアクセスするために異なるキーを使用しますか、またはこの機能はまだ実装されていませんか?Clojureでの履歴REPL

答えて

6

JLineを使用してREPLを拡張することができます(hereを参照)。

+0

私が削除破壊を犠牲にしてUbuntuの、JLineの修正履歴を実行しているのですか? –

20

もしあなたがUNIXのような環境を使用しているのであれば、rlwrapを使ってコマンドライン履歴のような素晴らしいものを実現し、それを検索するのにCtrl-Rを使うことができます。

ただ、例えば、あなたがREPLを起動するために使用してコマンドを付加:

rlwrap java -cp clojure.jar clojure.main

+1

これはos xでうまくいきました。私はちょうど 'blu install rlwrap'をして、準備が整いました。 Leinは素晴らしい作品です。 – jtruelove

+0

上記のコマンドは私のためには機能しませんでしたが、より簡単な変形がありました: rlwrap lein repl –

+1

@JeroenvanDijk:上記のコマンドは、あなたがleinをインストールしていなくても動作しますが、 cp'パラメータ)を使用して、clojure jar(この場合は同じディレクトリ)を正しく指すようにします。 lein(実際には推奨される方法です)を使用する場合は、 'rlwrap'を全く入力する必要はありません。この機能に含まれています。試してみてください。ちょうど' lein repl'です。 –

8

それともLeiningenをやケーキを使用しています。どちらも一般的には便利ですが、使い方を学ぶのは喜ばしいですが、具体的には利用可能な場所で自動的にreadlineやjlineを使います。

+1

+ 2! 'lein repl'はあなたの友だちです –

+0

'lein swank'もあなたの友人です、そしてemacsはシンタックスハイライト、pareditと他のグッズを提供します。 – klang

2

どのREPLを使用するかによって異なります。最も良いREPLにはこの機能があります。

たとえばEclipseユーザーとしてJavaを使用している場合は、Counterclockwiseプラグインが提供する埋め込みnREPLを使用することができます。私は、専用の専用Clojure環境を設定するよりも、使いやすくなっています。