44 lines
1.6 KiB
Lua
44 lines
1.6 KiB
Lua
|
local signs = {
|
||
|
{ name = "DiagnosticSignError", text = astronvim.get_icon "DiagnosticError" },
|
||
|
{ name = "DiagnosticSignWarn", text = astronvim.get_icon "DiagnosticWarn" },
|
||
|
{ name = "DiagnosticSignHint", text = astronvim.get_icon "DiagnosticHint" },
|
||
|
{ name = "DiagnosticSignInfo", text = astronvim.get_icon "DiagnosticInfo" },
|
||
|
{ name = "DiagnosticSignError", text = astronvim.get_icon "DiagnosticError" },
|
||
|
{ name = "DapStopped", text = astronvim.get_icon "DapStopped", texthl = "DiagnosticWarn" },
|
||
|
{ name = "DapBreakpoint", text = astronvim.get_icon "DapBreakpoint", texthl = "DiagnosticInfo" },
|
||
|
{ name = "DapBreakpointRejected", text = astronvim.get_icon "DapBreakpointRejected", texthl = "DiagnosticError" },
|
||
|
{ name = "DapBreakpointCondition", text = astronvim.get_icon "DapBreakpointCondition", texthl = "DiagnosticInfo" },
|
||
|
{ name = "DapLogPoint", text = astronvim.get_icon "DapLogPoint", texthl = "DiagnosticInfo" },
|
||
|
}
|
||
|
|
||
|
for _, sign in ipairs(signs) do
|
||
|
if not sign.texthl then sign.texthl = sign.name end
|
||
|
vim.fn.sign_define(sign.name, sign)
|
||
|
end
|
||
|
|
||
|
astronvim.lsp.diagnostics = {
|
||
|
off = {
|
||
|
underline = false,
|
||
|
virtual_text = false,
|
||
|
signs = false,
|
||
|
update_in_insert = false,
|
||
|
},
|
||
|
on = astronvim.user_plugin_opts("diagnostics", {
|
||
|
virtual_text = true,
|
||
|
signs = { active = signs },
|
||
|
update_in_insert = true,
|
||
|
underline = true,
|
||
|
severity_sort = true,
|
||
|
float = {
|
||
|
focused = false,
|
||
|
style = "minimal",
|
||
|
border = "rounded",
|
||
|
source = "always",
|
||
|
header = "",
|
||
|
prefix = "",
|
||
|
},
|
||
|
}),
|
||
|
}
|
||
|
|
||
|
vim.diagnostic.config(astronvim.lsp.diagnostics[vim.g.diagnostics_enabled and "on" or "off"])
|