Skip to content

Commit d5e6399

Browse files
committed
Split the ocaml filetype into several filetypes
Now ocamlinterface ocamllex and menhir types must be taken into account as well. The filetypes are introduced by ocaml/vim-ocaml#61
1 parent e0f4648 commit d5e6399

File tree

7 files changed

+84
-0
lines changed

7 files changed

+84
-0
lines changed

vim/merlin/dune

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,17 @@
1111
(autoload/merlin_visual.vim as vim/autoload/merlin_visual.vim)
1212
(doc/merlin.txt as vim/doc/merlin.txt)
1313
(ftdetect/merlin.vim as vim/ftdetect/merlin.vim)
14+
(ftplugin/menhir.vim as vim/ftplugin/menhir.vim)
1415
(ftplugin/merlin.vim as vim/ftplugin/merlin.vim)
1516
(ftplugin/ocaml.vim as vim/ftplugin/ocaml.vim)
17+
(ftplugin/ocamlinterface.vim as vim/ftplugin/ocamlinterface.vim)
18+
(ftplugin/ocamllex.vim as vim/ftplugin/ocamllex.vim)
1619
(ftplugin/omlet.vim as vim/ftplugin/omlet.vim)
1720
(ftplugin/reason.vim as vim/ftplugin/reason.vim)
1821
(plugin/merlin.vim as vim/plugin/merlin.vim)
22+
(syntax_checkers/menhir/merlin.vim as vim/syntax_checkers/menhir/merlin.vim)
1923
(syntax_checkers/ocaml/merlin.vim as vim/syntax_checkers/ocaml/merlin.vim)
24+
(syntax_checkers/ocamlinterface/merlin.vim as vim/syntax_checkers/ocamlinterface/merlin.vim)
25+
(syntax_checkers/ocamllex/merlin.vim as vim/syntax_checkers/ocamllex/merlin.vim)
2026
(syntax_checkers/omlet/merlin.vim as vim/syntax_checkers/omlet/merlin.vim)
2127
(syntax/merlin.vim as vim/syntax/merlin.vim)))

vim/merlin/ftplugin/menhir.vim

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
" Activate merlin on current buffer
2+
call merlin#Register()
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
" Activate merlin on current buffer
2+
call merlin#Register()

vim/merlin/ftplugin/ocamllex.vim

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
" Activate merlin on current buffer
2+
call merlin#Register()
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
" Enable Syntastic support
2+
" Make sure syntax_checkers directory is on runtime path, then set
3+
" :let g:syntastic_ocaml_checkers=['merlin']
4+
5+
function! SyntaxCheckers_ocaml_merlin_IsAvailable()
6+
if !exists("*merlin#SelectBinary")
7+
return 0
8+
endif
9+
try
10+
let l:path = merlin#SelectBinary()
11+
return executable(l:path)
12+
catch
13+
return 0
14+
endtry
15+
endfunction
16+
17+
function! SyntaxCheckers_ocaml_merlin_GetLocList()
18+
return merlin#ErrorLocList()
19+
endfunction
20+
21+
call g:SyntasticRegistry.CreateAndRegisterChecker({
22+
\ 'filetype': 'menhir',
23+
\ 'name': 'merlin'})
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
" Enable Syntastic support
2+
" Make sure syntax_checkers directory is on runtime path, then set
3+
" :let g:syntastic_ocaml_checkers=['merlin']
4+
5+
function! SyntaxCheckers_ocamlinterface_merlin_IsAvailable()
6+
if !exists("*merlin#SelectBinary")
7+
return 0
8+
endif
9+
try
10+
let l:path = merlin#SelectBinary()
11+
return executable(l:path)
12+
catch
13+
return 0
14+
endtry
15+
endfunction
16+
17+
function! SyntaxCheckers_ocamlinterface_merlin_GetLocList()
18+
return merlin#ErrorLocList()
19+
endfunction
20+
21+
call g:SyntasticRegistry.CreateAndRegisterChecker({
22+
\ 'filetype': 'ocamlinterface',
23+
\ 'name': 'merlin'})
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
" Enable Syntastic support
2+
" Make sure syntax_checkers directory is on runtime path, then set
3+
" :let g:syntastic_ocaml_checkers=['merlin']
4+
5+
function! SyntaxCheckers_ocaml_merlin_IsAvailable()
6+
if !exists("*merlin#SelectBinary")
7+
return 0
8+
endif
9+
try
10+
let l:path = merlin#SelectBinary()
11+
return executable(l:path)
12+
catch
13+
return 0
14+
endtry
15+
endfunction
16+
17+
function! SyntaxCheckers_ocaml_merlin_GetLocList()
18+
return merlin#ErrorLocList()
19+
endfunction
20+
21+
call g:SyntasticRegistry.CreateAndRegisterChecker({
22+
\ 'filetype': 'ocamllex',
23+
\ 'name': 'merlin'})
24+
call g:SyntasticRegistry.CreateAndRegisterChecker({
25+
\ 'filetype': 'menhir',
26+
\ 'name': 'merlin'})

0 commit comments

Comments
 (0)