Come posso ottenere un programma terminale per onorare i tasti cursore?
Domanda
Sto usando ccl / openmcl su Mac OS X. (ultime versioni di entrambi). Quando viene visualizzato il prompt lisp, l'uso dei tasti cursore per spostarsi sulla riga corrente genera codici di escape anziché movimento, ad es .:
Benvenuti in Clozure Common Lisp Versione 1.2-r9226-RC1 (DarwinX8664)!
? (^ [[D
Qui ho premuto il tasto (
, quindi il tasto cursore sinistro
.
Quando eseguo ccl / openmcl su una casella di Debian Etch, il cursore si comporta come previsto e sposta il punto di inserimento di una posizione a sinistra.
Suppongo che questa sia una sorta di opzione di configurazione del terminale?
Soluzione
Se Clozure CL non fornisce readline / editline nativi / qualunque sia il supporto o è configurato per non usarlo, è possibile eseguirlo con rlwrap, ad esempio:
rlwrap openmcl
rlwrap può essere ottenuto tramite MacPorts o direttamente da http://utopia.knoware.nl/~hlub/rlwrap/ .
Altri suggerimenti
So che non sto rispondendo alla domanda con questo, ma non dovresti passare molto tempo direttamente usando un sostituto lisp.
usare emacs e slime è un modo molto più conveniente di interagire con un lisp. hai un ispettore e un debugger a portata di mano, puoi saltare al codice sorgente delle funzioni, ecc.