36 lines
816 B
Lua
36 lines
816 B
Lua
local levels = vim.diagnostic.severity
|
|
|
|
local opts = {
|
|
virtual_text = false,
|
|
float = {
|
|
border = "rounded",
|
|
},
|
|
signs = {
|
|
text = {
|
|
[levels.ERROR] = '✘',
|
|
[levels.WARN] = '▲',
|
|
[levels.HINT] = '⚑',
|
|
[levels.INFO] = '»',
|
|
},
|
|
},
|
|
}
|
|
|
|
local sign_define = function(name, text)
|
|
local hl = 'DiagnosticSign' .. name
|
|
vim.fn.sign_define(hl, {
|
|
texthl = hl,
|
|
text = text,
|
|
numhl = ''
|
|
})
|
|
end
|
|
|
|
if vim.fn.has('nvim-0.10') == 0 then
|
|
sign_define('Error', opts.signs.text[levels.ERROR])
|
|
sign_define('Warn', opts.signs.text[levels.WARN])
|
|
sign_define('Hint', opts.signs.text[levels.HINT])
|
|
sign_define('Info', opts.signs.text[levels.INFO])
|
|
end
|
|
|
|
vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]
|
|
vim.diagnostic.config(opts)
|