Ocamlmerlin sous vim

Anne ocaml merlin vim ide syntastic

Tout est très bien expliqué dans le wiki, mais juste quelques notes ici pour ne pas oublier…

Installation

Dans .vimrc, on a déjà :

let g:opam_shared_dir = system("opam config var share")
let g:opam_shared_dir = substitute(g:opam_shared_dir, '[\r\n]*$', '', '''')

Il faut ajouter :

execute "set runtimepath+=" . g:opam_shared_dir . "/merlin/vim"

Il est intéressant d’utiliser aussi syntastic pour voir les erreurs quand on sauve le fichier. Pour qu’il utilise merlin, il faut lui dire :

let g:syntastic_ocaml_checkers = ['merlin']

Voir les types

C’est la fonction :TypeOf qui calcule les types, et comme avant, elle est branchée à <Localleader>t. La différence, hormis le fait que l’expression est surlignée, est qu’on peut utiliser :GrowEnclosing et :ShrinkEnclosing pour étendre au rétrécir l’expression.

On peut aussi utiliser :TypeOf expr pour connaître le type d’une expression qui n’est pas dans le source.

Complétion

Utiliser <Ctrl-x><Ctrl-o>.

  • :Locate pour aller à la définition de l’objet sous le curseur ou bien :Locate ident
  • :ML ModA ou :MLI ModA pour se déplacer vers le fichier source d’un module.

Voir aussi :