change behaviour of hover for DAP

This commit is contained in:
Antoine Vaure 2025-07-28 17:30:11 +02:00
parent 7d5ea1ede1
commit 6090606df7

View file

@ -73,11 +73,13 @@ function moveCursorToMouse()
vim.fn.setpos(".", { 0, mousePos.line, mousePos.column, 0 }) vim.fn.setpos(".", { 0, mousePos.line, mousePos.column, 0 })
end end
function hover() function dap_or(func)
return function ()
if dap.session() then if dap.session() then
dapui.eval() dapui.eval()
else else
vim.lsp.buf.signature_help() func()
end
end end
end end
@ -107,10 +109,10 @@ vim.api.nvim_create_autocmd('LspAttach', {
s('n', 'gD', vim.lsp.buf.declaration, { buffer = ev.buf, desc = "Goto declaration" }) s('n', 'gD', vim.lsp.buf.declaration, { buffer = ev.buf, desc = "Goto declaration" })
s('n', 'gd', telescope.lsp_definitions, { buffer = ev.buf, desc = "Goto definition" }) s('n', 'gd', telescope.lsp_definitions, { buffer = ev.buf, desc = "Goto definition" })
s( {'n', 'v'}, 'K', vim.lsp.buf.hover, { buffer = ev.buf, desc = "lsp Hover" }) s( {'n', 'v'}, 'K', vim.lsp.buf.hover, { buffer = ev.buf, desc = "lsp Hover" })
s( {'n', 'v'}, '<c-k>', hover, { buffer = ev.buf, desc = "dap eval" }) s( {'n', 'v'}, '<c-k>', dap_or(vim.lsp.buf.signature_help), { buffer = ev.buf, desc = "dap eval" })
s( s(
{'n', 'v'}, '<RightMouse>', {'n', 'v'}, '<RightMouse>',
function() moveCursorToMouse() vim.lsp.buf.hover() end, function() moveCursorToMouse() dap_or(vim.lsp.buf.hover)() end,
{ buffer = ev.buf, desc = "Hover" } { buffer = ev.buf, desc = "Hover" }
) )
s('n', 'gi', telescope.lsp_implementations, { buffer = ev.buf, desc = "Goto implementation" }) s('n', 'gi', telescope.lsp_implementations, { buffer = ev.buf, desc = "Goto implementation" })