opam-version: "2.0"
maintainer:   "defree@gmail.com"
authors:      "The Merlin team"
homepage:     "https://github.com/ocaml/merlin"
bug-reports:  "https://github.com/ocaml/merlin/issues"
dev-repo:     "git+https://github.com/ocaml/merlin.git"
license:      "MIT"
build: [
  ["dune" "subst"] {dev}
  ["dune" "build" "-p" name "-j" jobs]
  ["dune" "runtest" "-p" "merlin,dot-merlin-reader" "-j" "1"] {with-test}
]
depends: [
  "ocaml" {>= "4.12" & < "4.13"}
  "dune" {>= "2.9.0"}
  "dot-merlin-reader" {>= "4.0"}
  "yojson" {>= "1.6.0"}
  "conf-jq" {with-test}
  "csexp" {>= "1.2.3"}
  "result" {>= "1.5"}
  "menhir" {dev}
  "menhirLib" {dev}
  "menhirSdk" {dev}
]
synopsis:
  "Editor helper, provides completion, typing and source browsing in Vim and Emacs"
description:
  "Merlin is an assistant for editing OCaml code. It aims to provide the features available in modern IDEs: error reporting, auto completion, source browsing and much more."
post-messages: [
  "merlin installed.

Quick setup for VIM
-------------------
Append this to your .vimrc to add merlin to vim's runtime-path:
  let g:opamshare = substitute(system('opam var share'),'\\n$','','''')
  execute \"set rtp+=\" . g:opamshare . \"/merlin/vim\"

Also run the following line in vim to index the documentation:
  :execute \"helptags \" . g:opamshare . \"/merlin/vim/doc\"

Quick setup for EMACS
-------------------
Add opam emacs directory to your load-path by appending this to your .emacs:
  (let ((opam-share (ignore-errors (car (process-lines \"opam\" \"var\" \"share\")))))
   (when (and opam-share (file-directory-p opam-share))
    ;; Register Merlin
    (add-to-list 'load-path (expand-file-name \"emacs/site-lisp\" opam-share))
    (autoload 'merlin-mode \"merlin\" nil t nil)
    ;; Automatically start it in OCaml buffers
    (add-hook 'tuareg-mode-hook 'merlin-mode t)
    (add-hook 'caml-mode-hook 'merlin-mode t)
    ;; Use opam switch to lookup ocamlmerlin binary
    (setq merlin-command 'opam)))

Take a look at https://github.com/ocaml/merlin for more information

Quick setup with opam-user-setup
--------------------------------

Opam-user-setup support Merlin.

  $ opam user-setup install

should take care of basic setup.
See https://github.com/OCamlPro/opam-user-setup
"
  {success & !user-setup:installed}
]
url {
  src:
    "https://github.com/ocaml/merlin/releases/download/v4.4-412/merlin-4.4-412.tbz"
  checksum: [
    "sha256=16d879496882d44ee0a5392e20b3824240e70f1585b9ae6d936ff5f3a3beb2a3"
    "sha512=f51b2875b75215d0be378de86b9dca0957b5e62241ce625a46c6341c219582510d37af94dedf67e1d3db61ebacfef8fa764e4719fac16c0b4b99bb85d0b991d4"
  ]
}
x-commit-hash: "5497c563b06f868d72d4f74bd8026c1c1aeb6595"
