2011-11-02 12 views
14

Estoy dando los primeros pasos con Clojure, pero por alguna razón las teclas arriba/abajo no me permiten recorrer el historial de comandos en REPL como en REPLs de otros idiomas. ¿Clojure REPL usa diferentes claves para acceder al historial de comandos, o esta característica simplemente no (todavía) está implementada?Historial en Clojure REPL

Respuesta

6

Puede mejorar la REPL para hacer esto utilizando JLine, consulte here.

+0

estoy usando Ubuntu, JLine fija la historia a costa de romper borrar? –

20

Si está, por casualidad, usando un entorno tipo Unix, puede usar rlwrap para lograr cosas agradables como el historial de línea de comandos y Ctrl-R para buscar a través de él.

simplemente escriba el comando que se utiliza para iniciar repl, por ejemplo:

rlwrap java -cp clojure.jar clojure.main

+1

esto funcionó bien, en os x. Simplemente hice 'brew install rlwrap' y estaba listo para funcionar. Lein funciona muy bien también. – jtruelove

+0

el comando anterior no funcionó para mí, pero una variante más simple lo hizo: rlwrap lein repl –

+1

@JeroenvanDijk: El comando anterior funciona incluso si no tiene lein instalado, pero asume que establece el classpath (el ' parámetro cp') para apuntar correctamente a la jarra clojure - en este caso en el mismo directorio. Si usa lein (que en realidad es la manera recomendada) no necesita escribir 'rlwrap' en absoluto, viene incluido con esta funcionalidad, pruébelo, simplemente' lein repl'. –

8

o uso Leiningen o pastel. Cualquiera de estos es útil en general, y con gusto aprenderá a usarlos, pero específicamente usan readline o jline automáticamente donde estén disponibles.

+1

+ 2! 'lein repl' es su amigo –

+0

'lein swank' es también su amigo, entonces emacs proporcionará resaltado de sintaxis, paredit y otras cosas. – klang

2

Depende de qué REPL utilice. La mayoría de los buenos REPL tienen esta funcionalidad y más.

Si vienes de Java como un usuario de Eclipse, por ejemplo, es posible que desees utilizar el nREPL incrustado proporcionado por el complemento Counterclockwise. Me pareció más fácil de usar que la configuración de un entorno Clojure dedicado por separado.

Cuestiones relacionadas