mirror of
https://github.com/neovim/neovim.git
synced 2025-02-25 18:55:25 -06:00
fix(lsp): hover keymap (#31208)
* fix: use function call in keymap * fix: test
This commit is contained in:
parent
bff07f6dd0
commit
9a681ad09e
@ -371,7 +371,9 @@ function lsp._set_defaults(client, bufnr)
|
|||||||
and is_empty_or_default(bufnr, 'keywordprg')
|
and is_empty_or_default(bufnr, 'keywordprg')
|
||||||
and vim.fn.maparg('K', 'n', false, false) == ''
|
and vim.fn.maparg('K', 'n', false, false) == ''
|
||||||
then
|
then
|
||||||
vim.keymap.set('n', 'K', vim.lsp.buf.hover, { buffer = bufnr, desc = 'vim.lsp.buf.hover()' })
|
vim.keymap.set('n', 'K', function()
|
||||||
|
vim.lsp.buf.hover()
|
||||||
|
end, { buffer = bufnr, desc = 'vim.lsp.buf.hover()' })
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
if client:supports_method(ms.textDocument_diagnostic) then
|
if client:supports_method(ms.textDocument_diagnostic) then
|
||||||
|
@ -466,10 +466,17 @@ describe('LSP', function()
|
|||||||
true,
|
true,
|
||||||
exec_lua(function()
|
exec_lua(function()
|
||||||
local keymap --- @type table<string,any>
|
local keymap --- @type table<string,any>
|
||||||
|
local called = false
|
||||||
|
local origin = vim.lsp.buf.hover
|
||||||
|
vim.lsp.buf.hover = function()
|
||||||
|
called = true
|
||||||
|
end
|
||||||
vim._with({ buf = _G.BUFFER }, function()
|
vim._with({ buf = _G.BUFFER }, function()
|
||||||
keymap = vim.fn.maparg('K', 'n', false, true)
|
keymap = vim.fn.maparg('K', 'n', false, true)
|
||||||
end)
|
end)
|
||||||
return keymap.callback == vim.lsp.buf.hover
|
keymap.callback()
|
||||||
|
vim.lsp.buf.hover = origin
|
||||||
|
return called
|
||||||
end)
|
end)
|
||||||
)
|
)
|
||||||
client:stop()
|
client:stop()
|
||||||
@ -480,13 +487,13 @@ describe('LSP', function()
|
|||||||
eq('', get_buf_option('omnifunc'))
|
eq('', get_buf_option('omnifunc'))
|
||||||
eq('', get_buf_option('formatexpr'))
|
eq('', get_buf_option('formatexpr'))
|
||||||
eq(
|
eq(
|
||||||
'',
|
true,
|
||||||
exec_lua(function()
|
exec_lua(function()
|
||||||
local keymap --- @type string
|
local keymap --- @type string
|
||||||
vim._with({ buf = _G.BUFFER }, function()
|
vim._with({ buf = _G.BUFFER }, function()
|
||||||
keymap = vim.fn.maparg('K', 'n', false, false)
|
keymap = vim.fn.maparg('K', 'n', false, false)
|
||||||
end)
|
end)
|
||||||
return keymap
|
return keymap:match('<Lua %d+: .+/runtime/lua/vim/lsp%.lua:%d+>') ~= nil
|
||||||
end)
|
end)
|
||||||
)
|
)
|
||||||
end,
|
end,
|
||||||
|
Loading…
Reference in New Issue
Block a user