bugfix: virtual marker out of range for diag

pull/44/head
ray-x 3 years ago
parent 747db16f59
commit 96e9772d5b

@ -48,6 +48,9 @@ local function error_marker(result, client_id)
local wwidth = vim.fn.winwidth(winid) local wwidth = vim.fn.winwidth(winid)
local wheight = vim.fn.winheight(winid) local wheight = vim.fn.winheight(winid)
if total_num <= wheight then
first_line = 0
end
local pos = {} local pos = {}
-- pos of virtual text -- pos of virtual text
for _, diag in pairs(result.diagnostics) do for _, diag in pairs(result.diagnostics) do
@ -76,7 +79,11 @@ local function error_marker(result, client_id)
if s.severity > 1 then if s.severity > 1 then
hl = 'WarningMsg' hl = 'WarningMsg'
end end
vim.api.nvim_buf_set_extmark(bufnr, _NG_VT_NS, s.line + first_line, -1, local l = s.line + first_line
if l > total_num then
l = total_num
end
vim.api.nvim_buf_set_extmark(bufnr, _NG_VT_NS, l, -1,
{virt_text = {{s.sign, hl}}, virt_text_pos = 'right_align'}) {virt_text = {{s.sign, hl}}, virt_text_pos = 'right_align'})
end end
end end

Loading…
Cancel
Save