3

私はWindows7と最新のラインでCygwinを使用していますが、担当者がいるときに上下に押すと、履歴が表示されるのではなく、担当者コンソール内を移動します(これは私が期待していることです)。私はグーグルで調べて、これがreadlineの代わりにjlineを使用することに関連していることを確認しました(それが意味するものは何でも)が、問題を解決するためにこの情報を使用する方法がわかりません。

4

2 に答える 2

5

私はここで答えを見つけました:

sttyを呼び出してjline.terminalを設定するように、lein起動スクリプトを変更しましたが、機能しているようです。

stty -icanon min 1 -echo
$LEIN_JAVA_CMD \
    -client -XX:+TieredCompilation \
    -Djline.terminal=jline.UnixTerminal \
    $LEIN_JVM_OPTS \
    -Dfile.encoding=UTF-8 \
    -Dmaven.wagon.http.ssl.easy=false \
    -Dleiningen.original.pwd="$ORIGINAL_PWD" \
    -Dleiningen.trampoline-file="$TRAMPOLINE_FILE" \
    -cp "$CLASSPATH" \
    clojure.main -m leiningen.core.main "$@"
EXIT_CODE=$?
stty icanon echo

私はleinスクリプトでそのセクションを変更し、今度はup=historyに変更しました。

于 2013-03-19T02:46:03.750 に答える
4

あなたが提案したものの代替アプローチrlwrapは、Cygwinで利用可能なインストールすることです。これにより、インタラクティブなコマンドラインアプリケーションにReadline機能(コマンド履歴の検索やナビゲーションなど)が提供されます。bashを長期間使用している場合は、これらの機能が何であるかがわかります。

リードラインラッパーのパラメーターとしてアプリケーションを起動する必要がありますが、必要に応じてエイリアスまたは関数を使用してこれを隠すことができます。

rlwrap lein repl

提案に対してrlwrapを使用する利点は、この機能をreplの特定のケース以上に追加できることです。

于 2013-03-20T10:00:09.720 に答える