diff options
author | CPea <[email protected]> | 2023-04-10 02:05:20 +0700 |
---|---|---|
committer | CPea <[email protected]> | 2023-04-24 19:11:08 +0700 |
commit | 49e82310f72f6b0c62fa506761a005876f615b2e (patch) | |
tree | 3df337560c56ea23ea610e013f3f39a4a81976c4 /lua/lvim/lsp/handlers.lua | |
parent | 01a4abc0b31b2ee554cbf775c4a6e907e5dbd34d (diff) |
refactor(lsp)!: deprecate `lvim.lsp.diagnostics`
Diffstat (limited to 'lua/lvim/lsp/handlers.lua')
-rw-r--r-- | lua/lvim/lsp/handlers.lua | 50 |
1 files changed, 35 insertions, 15 deletions
diff --git a/lua/lvim/lsp/handlers.lua b/lua/lvim/lsp/handlers.lua index bdd09e4a..f26bca1f 100644 --- a/lua/lvim/lsp/handlers.lua +++ b/lua/lvim/lsp/handlers.lua @@ -2,22 +2,42 @@ -- Note: You can set a prefix per lsp server in the lv-globals.lua file local M = {} -function M.setup() - local config = { -- your config - virtual_text = lvim.lsp.diagnostics.virtual_text, - signs = lvim.lsp.diagnostics.signs, - underline = lvim.lsp.diagnostics.underline, - update_in_insert = lvim.lsp.diagnostics.update_in_insert, - severity_sort = lvim.lsp.diagnostics.severity_sort, - float = lvim.lsp.diagnostics.float, - } - vim.diagnostic.config(config) +local default_diagnostic_config = { + signs = { + active = true, + values = { + { name = "DiagnosticSignError", text = lvim.icons.diagnostics.Error }, + { name = "DiagnosticSignWarn", text = lvim.icons.diagnostics.Warning }, + { name = "DiagnosticSignHint", text = lvim.icons.diagnostics.Hint }, + { name = "DiagnosticSignInfo", text = lvim.icons.diagnostics.Information }, + }, + }, + virtual_text = true, + update_in_insert = false, + underline = true, + severity_sort = true, + float = { + focusable = true, + style = "minimal", + border = "rounded", + source = "always", + header = "", + prefix = "", + format = function(d) + local code = d.code or (d.user_data and d.user_data.lsp.code) + if code then + return string.format("%s [%s]", d.message, code):gsub("1. ", "") + end + return d.message + end, + }, +} - if lvim.lsp.handlers.override_config then - vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, lvim.lsp.handlers.override_config) - vim.lsp.handlers["textDocument/signatureHelp"] = - vim.lsp.with(vim.lsp.handlers.signature_help, lvim.lsp.handlers.override_config) - end +function M.load_defaults() + vim.diagnostic.config(default_diagnostic_config) + + vim.lsp.handlers["textDocument/hover"] = vim.lsp.with(vim.lsp.handlers.hover, lvim.lsp.handlers) + vim.lsp.handlers["textDocument/signatureHelp"] = vim.lsp.with(vim.lsp.handlers.signature_help, lvim.lsp.handlers) end return M |