Merge pull request #15257 from gpanders/remove-set_virtual_text

refactor: remove remaining references to nvim_buf_set_virtual_text
This commit is contained in:
Thomas Vigouroux 2021-08-04 09:28:38 +02:00 committed by GitHub
commit 3d18359672
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 18 additions and 13 deletions

View File

@ -661,8 +661,7 @@ nvim_create_namespace({name}) *nvim_create_namespace()*
Creates a new namespace, or gets an existing one.
Namespaces are used for buffer highlights and virtual text,
see |nvim_buf_add_highlight()| and
|nvim_buf_set_virtual_text()|.
see |nvim_buf_add_highlight()| and |nvim_buf_set_extmark()|.
Namespaces can be named or anonymous. If `name` matches an
existing namespace, the associated id is returned. If `name`

View File

@ -538,7 +538,7 @@ Highlight groups related to |lsp-codelens| functionality.
*hl-LspCodeLens*
LspCodeLens
Used to color the virtual text of the codelens. See
|nvim_buf_set_virtual_text()|.
|nvim_buf_set_extmark()|.
LspCodeLensSeparator *hl-LspCodeLensSeparator*
Used to color the seperator between two or more code lens.
@ -1376,7 +1376,8 @@ get_prev_pos({opts}) *vim.lsp.diagnostic.get_prev_pos()*
*vim.lsp.diagnostic.get_virtual_text_chunks_for_line()*
get_virtual_text_chunks_for_line({bufnr}, {line}, {line_diags}, {opts})
Default function to get text chunks to display using `nvim_buf_set_virtual_text` .
Default function to get text chunks to display using
|nvim_buf_set_extmark()|.
Parameters: ~
{bufnr} number The buffer to display the virtual
@ -1388,7 +1389,9 @@ get_virtual_text_chunks_for_line({bufnr}, {line}, {line_diags}, {opts})
|vim.lsp.diagnostic.set_virtual_text()|
Return: ~
table chunks, as defined by |nvim_buf_set_virtual_text()|
an array of [text, hl_group] arrays. This can be passed
directly to the {virt_text} option of
|nvim_buf_set_extmark()|.
goto_next({opts}) *vim.lsp.diagnostic.goto_next()*
Move to the next diagnostic

View File

@ -123,7 +123,7 @@ function M.display(lenses, bufnr, client_id)
end
end
if #chunks > 0 then
api.nvim_buf_set_virtual_text(bufnr, ns, i, chunks, {})
api.nvim_buf_set_extmark(bufnr, ns, i, 0, { virt_text = chunks })
end
end
end
@ -179,12 +179,12 @@ local function resolve_lenses(lenses, bufnr, client_id, callback)
-- Eager display to have some sort of incremental feedback
-- Once all lenses got resolved there will be a full redraw for all lenses
-- So that multiple lens per line are properly displayed
api.nvim_buf_set_virtual_text(
api.nvim_buf_set_extmark(
bufnr,
ns,
lens.range.start.line,
{{ lens.command.title, 'LspCodeLens' },},
{}
0,
{ virt_text = {{ lens.command.title, 'LspCodeLens' }} }
)
end
countdown()

View File

@ -766,17 +766,20 @@ function M.set_virtual_text(diagnostics, bufnr, client_id, diagnostic_ns, opts)
local virt_texts = M.get_virtual_text_chunks_for_line(bufnr, line, line_diagnostics, opts)
if virt_texts then
api.nvim_buf_set_virtual_text(bufnr, diagnostic_ns, line, virt_texts, {})
api.nvim_buf_set_extmark(bufnr, diagnostic_ns, line, 0, {
virt_text = virt_texts,
})
end
end
end
--- Default function to get text chunks to display using `nvim_buf_set_virtual_text`.
--- Default function to get text chunks to display using |nvim_buf_set_extmark()|.
---@param bufnr number The buffer to display the virtual text in
---@param line number The line number to display the virtual text on
---@param line_diags Diagnostic[] The diagnostics associated with the line
---@param opts table See {opts} from |vim.lsp.diagnostic.set_virtual_text()|
---@return table chunks, as defined by |nvim_buf_set_virtual_text()|
---@return an array of [text, hl_group] arrays. This can be passed directly to
--- the {virt_text} option of |nvim_buf_set_extmark()|.
function M.get_virtual_text_chunks_for_line(bufnr, line, line_diags, opts)
assert(bufnr or line)

View File

@ -1557,7 +1557,7 @@ void nvim_set_current_tabpage(Tabpage tabpage, Error *err)
/// Creates a new namespace, or gets an existing one.
///
/// Namespaces are used for buffer highlights and virtual text, see
/// |nvim_buf_add_highlight()| and |nvim_buf_set_virtual_text()|.
/// |nvim_buf_add_highlight()| and |nvim_buf_set_extmark()|.
///
/// Namespaces can be named or anonymous. If `name` matches an existing
/// namespace, the associated id is returned. If `name` is an empty string