Clojure REPL的历史

时间:2011-11-02 14:25:53

标签: clojure read-eval-print-loop

我正在使用Clojure完成我的第一步,但由于某种原因,向上/向下键不允许我在REPL中逐步执行命令历史记录,就像在其他语言的REPL中一样。 Clojure REPL是否使用不同的密钥来访问命令历史记录,或者此功能是否尚未实现?

5 个答案:

答案 0 :(得分:20)

如果您有任何机会使用类似Unix的环境,您可以使用rlwrap来实现命令行历史记录和Ctrl-R等搜索功能。

只需添加用于启动repl的命令,例如:

rlwrap java -cp clojure.jar clojure.main

答案 1 :(得分:8)

或使用Leiningen或Cake。这些中的任何一个都是有用的,你会很乐意学会使用它们,但具体来说它们会在可用时自动使用readline或jline。

答案 2 :(得分:6)

您可以使用JLine增强REPL来执行此操作,请参阅here

答案 3 :(得分:2)

取决于您使用的REPL。大多数优秀的REPL都具有此功能以及更多功能。

例如,如果您是以Eclipse用户身份来自Java,则可能需要使用Counterclockwise插件提供的嵌入式nREPL。我发现这比配置单独的专用Clojure环境更容易使用。

答案 4 :(得分:1)

C-,M-x slime-repl-forward-input C-,M-x粘液 - 重复 - 反向输入     转到下一个/上一个历史记录项。

http://common-lisp.net/project/slime/doc/html/Input-Navigation.html