2 files changed,
29 insertions(+),
6 deletions(-)
Author:
Oleksandr Smirnov
olexsmir@gmail.com
Committed at:
2025-06-19 02:19:58 +0300
Parent:
b8afdd9
jump to
| A | lsp/elmls.lua |
| M | lua/core/lsp.lua |
A
lsp/elmls.lua
@@ -0,0 +1,27 @@
+local u = require("core.utils").lsp + +---@return vim.lsp.Client +return { + cmd = { "elm-language-server" }, + filetypes = { "elm" }, + root_dir = function(bufnr, on_dir) + local fname = vim.api.nvim_buf_get_name(bufnr) + local filetype = vim.api.nvim_get_option_value("filetype", { buf = 0 }) + if + filetype == "elm" or (filetype == "json" and fname:match "elm%.json$") + then + on_dir(vim.fs.root(fname, "elm.json")) + return + end + on_dir(nil) + end, + init_options = { + elmReviewDiagnostics = "off", -- 'off' | 'warning' | 'error' + skipInstallPackageConfirmation = false, + disableElmLSDiagnostics = false, + onlyUpdateDiagnosticsOnSave = false, + }, + capabilities = u.capabilities { + offsetEncoding = { "utf-8", "utf-16" }, + }, +}
M
lua/core/lsp.lua
@@ -1,6 +1,7 @@
local u = require "core.utils" vim.lsp.enable { + "elmls", "golangci_lint_ls", "gopls", "jsonls",@@ -35,12 +36,7 @@ u.map("n", "gi", "<cmd>lua Snacks.picker.lsp_implementations()<cr>", bufnr)
u.map("n", "gl", vim.diagnostic.open_float, bufnr) u.map("n", "<leader>la", vim.lsp.buf.code_action, bufnr) u.map("n", "<leader>lr", vim.lsp.buf.rename, bufnr) - u.map( - "n", - "<leader>ss", - "<cmd>lua Snacks.picker.lsp_symbols()<cr>", - bufnr - ) + u.map("n", "<leader>ss", "<cmd>lua Snacks.picker.lsp_symbols()<cr>", bufnr) u.map("n", "<leader>ll", vim.lsp.codelens.run, bufnr) u.map("n", "<leader>li", function() if vim.lsp.inlay_hint.is_enabled { bufnr = bufnr } then