mirror of
https://github.com/LazyVim/LazyVim.git
synced 2025-06-22 00:49:03 +02:00
40 lines
975 B
Lua
40 lines
975 B
Lua
|
return {
|
||
|
recommended = function()
|
||
|
return LazyVim.extras.wants({
|
||
|
ft = { "ml", "mli", "cmi", "cmo", "cmx", "cma", "cmxa", "cmxs", "cmt", "cmti", "opam" },
|
||
|
root = { "merlin.opam", "dune-project" },
|
||
|
})
|
||
|
end,
|
||
|
{
|
||
|
"nvim-treesitter/nvim-treesitter",
|
||
|
opts = function(_, opts)
|
||
|
if type(opts.ensure_installed) == "table" then
|
||
|
vim.list_extend(opts.ensure_installed, { "ocaml" })
|
||
|
end
|
||
|
end,
|
||
|
},
|
||
|
{
|
||
|
"neovim/nvim-lspconfig",
|
||
|
opts = {
|
||
|
servers = {
|
||
|
ocamllsp = {
|
||
|
get_language_id = function(_, ftype)
|
||
|
return language_id_of[ftype]
|
||
|
end,
|
||
|
root_dir = function(fname)
|
||
|
return require("lspconfig.util").root_pattern(
|
||
|
"*.opam",
|
||
|
"esy.json",
|
||
|
"package.json",
|
||
|
".git",
|
||
|
"dune-project",
|
||
|
"dune-workspace",
|
||
|
"*.ml"
|
||
|
)(fname)
|
||
|
end,
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
}
|