mirror of
https://github.com/LunarVim/LunarVim.git
synced 2025-07-19 18:25:22 +02:00
48 lines
1,011 B
Lua
48 lines
1,011 B
Lua
local M = {}
|
|
|
|
M.config = function()
|
|
local elm_bin = DATA_PATH .. "/lspinstall/elm/node_modules/.bin"
|
|
|
|
O.lang.elm = {
|
|
lsp = {
|
|
path = elm_bin .. "/elm-language-server",
|
|
format = elm_bin .. "/elm-format",
|
|
root = elm_bin,
|
|
test = elm_bin .. "/elm-test",
|
|
},
|
|
}
|
|
end
|
|
|
|
M.format = function()
|
|
-- TODO: implement formatter for language
|
|
return "No formatter available!"
|
|
end
|
|
|
|
M.lint = function()
|
|
-- TODO: implement linters (if applicable)
|
|
return "No linters configured!"
|
|
end
|
|
|
|
M.lsp = function()
|
|
if require("lv-utils").check_lsp_client_active "elmls" then
|
|
return
|
|
end
|
|
|
|
require("lspconfig").elmls.setup {
|
|
cmd = { O.lang.elm.lsp.path },
|
|
on_attach = require("lsp").common_on_attach,
|
|
init_options = {
|
|
elmAnalyseTrigger = "change",
|
|
elmFormatPath = O.lang.elm.lsp.format,
|
|
elmPath = O.lang.elm.lsp.root,
|
|
elmTestPath = O.lang.elm.lsp.test,
|
|
},
|
|
}
|
|
end
|
|
|
|
M.dap = function()
|
|
-- TODO: implement dap
|
|
return "No DAP configured!"
|
|
end
|
|
|
|
return M
|