Merlin is an editor service that provides advanced IDE features for OCaml.
Installation for Emacs and VIM
1. Opam installation (jump to the next section if you already have opam)
First of all, you need a working installation of opam, the OCaml package manager. You can follow the instructions here. Running the install script is usually the simplest way to go.
⚠ If you chose to install opam via a package manager and not the install script, don’t forget to run
opam init
afterward. (This requires common build tools such as the ones present in thebuild-essential
package of most distributions.)
2. Merlin installation with opam
Then you can install Merlin by running the following commands:
opam update # (optional) check latests releases
opam install tuareg # For Emacs only
opam install merlin # Install merlin and it's dependencies
opam user-setup install # Emacs and VIM auto-configuration
After that, the Merlin mode should start automatically when a .ml
or .mli
file is opened.
3. Project configuration
Merlin works best with Dune. Just run dune
build
once and Merlin will find its configuration automatically.
You’re ready to go !
Up your wizard 🧙 skills
Learn about all Merlin’s commands in the dedicated Emacs and VIM pages:
Merlin for Visual Studio Code
When using Visual Studio Code, Merlin is hidden behind another frontend named OCaml LSP that implements the Language Server Protocol. You will need the OCaml Platform vscode extension and the ocaml-lsp-server opam package to get started. Instructions for installing both of these can be found in the extension’s readme.
Manual project configuration
When using others build systems than Dune, manual project configuration is required. The syntax of the configuration files is described here.
If you have an unusual setup and need instructions for building and configuring Merlin manually you should give a look to the github presentation and wiki. If you are still blocked feel free to open an issue in the bug tracker.