|
| 1 | +opam-version: "2.0" |
| 2 | + |
| 3 | +authors: "The Merlin team" |
| 4 | +homepage: "https://github.com/ocaml/merlin" |
| 5 | +bug-reports: "https://github.com/ocaml/merlin/issues" |
| 6 | +dev-repo: "git+https://github.com/ocaml/merlin.git" |
| 7 | +license: "MIT" |
| 8 | +x-maintenance-intent: ["(latest)"] |
| 9 | +build: [ |
| 10 | + ["dune" "subst"] {dev} |
| 11 | + ["dune" "build" "-p" name "-j" jobs] |
| 12 | + ["dune" "runtest" "-p" name "-j" jobs] {with-test} |
| 13 | +] |
| 14 | +depends: [ |
| 15 | + "ocaml" {>= "4.14" & < "4.15"} |
| 16 | + "dune" {>= "2.9.0"} |
| 17 | + "merlin-lib" {= version} |
| 18 | + "dot-merlin-reader" {>= "4.17.1"} |
| 19 | + "yojson" {>= "2.0.0"} |
| 20 | + "conf-jq" {with-test} |
| 21 | + "ppxlib" {with-test} |
| 22 | +] |
| 23 | +conflicts: [ |
| 24 | + "seq" {!= "base"} |
| 25 | + "base-effects" |
| 26 | +] |
| 27 | +synopsis: |
| 28 | + "Editor helper, provides completion, typing and source browsing in Vim and Emacs" |
| 29 | +description: |
| 30 | + "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." |
| 31 | +post-messages: [ |
| 32 | + "merlin installed. |
| 33 | + |
| 34 | +Quick setup for VIM |
| 35 | +------------------- |
| 36 | +Append this to your .vimrc to add merlin to vim's runtime-path: |
| 37 | + let g:opamshare = substitute(system('opam var share'),'\\n$','','''') |
| 38 | + execute \"set rtp+=\" . g:opamshare . \"/merlin/vim\" |
| 39 | + |
| 40 | +Also run the following line in vim to index the documentation: |
| 41 | + :execute \"helptags \" . g:opamshare . \"/merlin/vim/doc\" |
| 42 | + |
| 43 | +Quick setup for EMACS |
| 44 | +------------------- |
| 45 | +Add opam emacs directory to your load-path by appending this to your .emacs: |
| 46 | + (let ((opam-share (ignore-errors (car (process-lines \"opam\" \"var\" \"share\"))))) |
| 47 | + (when (and opam-share (file-directory-p opam-share)) |
| 48 | + ;; Register Merlin |
| 49 | + (add-to-list 'load-path (expand-file-name \"emacs/site-lisp\" opam-share)) |
| 50 | + (autoload 'merlin-mode \"merlin\" nil t nil) |
| 51 | + ;; Automatically start it in OCaml buffers |
| 52 | + (add-hook 'tuareg-mode-hook 'merlin-mode t) |
| 53 | + (add-hook 'caml-mode-hook 'merlin-mode t) |
| 54 | + ;; Use opam switch to lookup ocamlmerlin binary |
| 55 | + (setq merlin-command 'opam) |
| 56 | + ;; To easily change opam switches within a given Emacs session, you can |
| 57 | + ;; install the minor mode https://github.com/ProofGeneral/opam-switch-mode |
| 58 | + ;; and use one of its \"OPSW\" menus. |
| 59 | + )) |
| 60 | +Take a look at https://github.com/ocaml/merlin for more information |
| 61 | + |
| 62 | +Quick setup with opam-user-setup |
| 63 | +-------------------------------- |
| 64 | + |
| 65 | +Opam-user-setup support Merlin. |
| 66 | + |
| 67 | + $ opam user-setup install |
| 68 | + |
| 69 | +should take care of basic setup. |
| 70 | +See https://github.com/OCamlPro/opam-user-setup |
| 71 | +" |
| 72 | + {success & !user-setup:installed} |
| 73 | +] |
| 74 | +url { |
| 75 | + src: |
| 76 | + "https://github.com/ocaml/merlin/releases/download/v4.19-414/merlin-4.19-414.tbz" |
| 77 | + checksum: [ |
| 78 | + "sha256=60a630f59203a9ce7047a5f04d0f239945960dac6f38102922e328b6d2657384" |
| 79 | + "sha512=19f8ec152356873e29c05b971a529146bb7079929037c2b35a5c0afb0b3adf662341ee8527282c5fdd16de391d01c2c469fc8629af9e0ae443fa9f42472b70bb" |
| 80 | + ] |
| 81 | +} |
| 82 | +x-commit-hash: "de2dc6fc7863b1624e7dbb9c6af6a6fb9b30c644" |
0 commit comments