Como faço para obter um programa de terminal para teclas de cursor honra?
Pergunta
Eu estou usando CCL / openmcl no Mac OS X. (versões mais recentes de ambos). Quando o prompt lisp é exibido, usando as teclas do cursor para navegar pelos resultados de linha atuais em códigos de escape, em vez de movimento, por exemplo:
Welcome to Clozure Common Lisp Version 1.2-r9226-RC1 (DarwinX8664)!
? (^[[D
Aqui eu pressionou a tecla (
, e depois a tecla left cursor
.
Quando eu executar CCL / openmcl em uma caixa de Debian Etch, se comporta de cursor como esperado, e move o ponto de inserção uma posição à esquerda.
Eu acho que isso é algum tipo de opção de configuração terminal?
Solução
Se Clozure CL não fornece readline nativa / editline / whatever de apoio ou está configurado para não usá-lo, você pode executá-lo com rlwrap, por exemplo:
rlwrap openmcl
rlwrap podem ser obtidas através MacPorts ou diretamente de http://utopia.knoware.nl/~hlub/rlwrap/ .
Outras dicas
Eu sei que eu não estou respondendo à pergunta com isso, mas você não deve gastar muito tempo diretamente usando um repl lisp.
Usando o emacs e lodo é uma maneira muito mais conveniente de interagir com a língua presa. você tem um inspector e um depurador na mão, você pode saltar para o código-fonte das funções, etc.