Search code examples
ocamlinterpreterarrow-keysledit

Is it possible to use arrow keys in OCaml interpreter?


Everytime I use these keys in the interpreter I keep getting symbols like this appearing:

[[D^[[C

I'm using Linux Mint 12 in ZSH, however I'm getting the same result in Ubuntu with bash. Also, same thing in ssh.


Solution

  • The stock OCaml toplevel doesn't have line editing built in. I use rlwrap:

    $ cat bin/ocaml
    #!/bin/sh
    exec rlwrap /usr/local/bin/ocaml "$@"
    

    Using the toplevel without something like this is quite painful, in my opinion!

    Other possibilities are to run the toplevel under emacs (a popular choice, I think), or to use utop. I haven't used utop, but it sounds cool.