Skip to content

Commit

Permalink
(vim) Split the ocaml filetype into several filetypes (#1340)
Browse files Browse the repository at this point in the history
from undu/ocaml_interface
  • Loading branch information
voodoos authored Jan 29, 2024
2 parents d982cfc + bd4d3a3 commit 8f773db
Show file tree
Hide file tree
Showing 5 changed files with 32 additions and 0 deletions.
2 changes: 2 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ merlin NEXT_VERSION
- Add a "heap_mbytes" field to Merlin server responses to report heap usage (#1717)
- Add cache stats to telemetry (#1711)
- Add a query_num field to the `ocamlmerlin` responses to detect server crashes (#1716)
+ editor modes
- vim: load merlin under the ocamlinterface and ocamllex filetypes (#1340)

merlin 4.13
===========
Expand Down
3 changes: 3 additions & 0 deletions vim/merlin/dune
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,12 @@
(ftdetect/merlin.vim as vim/ftdetect/merlin.vim)
(ftplugin/merlin.vim as vim/ftplugin/merlin.vim)
(ftplugin/ocaml.vim as vim/ftplugin/ocaml.vim)
(ftplugin/ocamlinterface.vim as vim/ftplugin/ocamlinterface.vim)
(ftplugin/ocamllex.vim as vim/ftplugin/ocamllex.vim)
(ftplugin/omlet.vim as vim/ftplugin/omlet.vim)
(ftplugin/reason.vim as vim/ftplugin/reason.vim)
(plugin/merlin.vim as vim/plugin/merlin.vim)
(syntax_checkers/ocaml/merlin.vim as vim/syntax_checkers/ocaml/merlin.vim)
(syntax_checkers/ocamlinterface/merlin.vim as vim/syntax_checkers/ocamlinterface/merlin.vim)
(syntax_checkers/omlet/merlin.vim as vim/syntax_checkers/omlet/merlin.vim)
(syntax/merlin.vim as vim/syntax/merlin.vim)))
2 changes: 2 additions & 0 deletions vim/merlin/ftplugin/ocamlinterface.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
" Activate merlin on current buffer
call merlin#Register()
2 changes: 2 additions & 0 deletions vim/merlin/ftplugin/ocamllex.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
" Activate merlin on current buffer
call merlin#Register()
23 changes: 23 additions & 0 deletions vim/merlin/syntax_checkers/ocamlinterface/merlin.vim
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
" Enable Syntastic support
" Make sure syntax_checkers directory is on runtime path, then set
" :let g:syntastic_ocamlinterface_checkers=['merlin']

function! SyntaxCheckers_ocamlinterface_merlin_IsAvailable()
if !exists("*merlin#SelectBinary")
return 0
endif
try
let l:path = merlin#SelectBinary()
return executable(l:path)
catch
return 0
endtry
endfunction

function! SyntaxCheckers_ocamlinterface_merlin_GetLocList()
return merlin#ErrorLocList()
endfunction

call g:SyntasticRegistry.CreateAndRegisterChecker({
\ 'filetype': 'ocamlinterface',
\ 'name': 'merlin'})

0 comments on commit 8f773db

Please sign in to comment.