通常のClojure repl clojure.main/repl
には、replの動作をフックインして無効にする:print
、:prompt
、:eval
などのオプションがあります。Leiningenはclojure.main/replにrepl-optionsを渡します
など。
(clojure.main/repl
:print #(println "main print!" %)
:prompt #(println "main prompt!")
:eval #(do (println "main eval!") (eval %)))
私はLeiningenをの:repl-options
は、あなたが同じオプションを指定してみましょう、とLeiningenをはClojureののREPLへのそれらを通過することを想定。これにヒントはLeiningenをレポでさえあります:
Support :repl-options in project.clj that get passed to clojure.main/repl.
私はこの仕事を得ることができません。 Leiningenはclojure.main/repl
と同じオプションを受け入れていないようです。 :prompt
が機能しますが、関数の署名は異なりますが、:print
と:eval
は無視されているようです。
Leiningenのreplで印刷と評価の動作を変更する方法はありますか?
マイproject.clj
:
(defproject repl-test "0.1.0-SNAPSHOT"
:dependencies [[org.clojure/clojure "1.7.0"]]
:repl-options {
:print #(println "lein print!" %)
:prompt (constantly "lein prompt!")
:eval #(do (println "lein eval!") (eval %))
}
)
私はLeiningenを2.7.1を使用しています。
背景:
私はその出力にpprint
を使用するようにlein repl
を設定しようとしてきました。ここでも、NEWS.mdはこれをヒント:それも感謝して
Support :project-init in project.clj to allow pprint to be used in :repl-options.
ヘルプ!
ありがとう、それはそれを説明するでしょう。過去のある時点でclojure.main/replを使用するように見えます。 – Alex