-
Notifications
You must be signed in to change notification settings - Fork 1.1k
/
opam
70 lines (62 loc) · 2.42 KB
/
opam
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
opam-version: "2.0"
name: "merlin"
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"
build: [
["dune" "subst"] {pinned}
["dune" "build" "-p" name "-j" jobs]
]
depends: [
"ocaml" {>= "4.02.1" & < "4.09"}
"dune" {build & >= "1.8.0"}
"ocamlfind" {>= "1.5.2"}
"yojson"
"mdx" {with-test & >= "1.3.0"}
]
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 config 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\" \"config\" \"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/v3.3.0/merlin-v3.3.0.tbz"
checksum: [
"sha256=b342cd38034d477457c89b0c143784ed243621c60954afe26766c793f086ebda"
"sha512=73513a7f21124e47eb7609344c30f5cce5e5c5880b9ab8f0c0b52d847bbd2d7c715b522cdc7327db0f935d82bc9a6f9d6312717d50da4252666dd5543991e08c"
]
}