diff --git a/init.lua b/init.lua index 0cecd16..c599d3b 100644 --- a/init.lua +++ b/init.lua @@ -439,6 +439,27 @@ require('lazy').setup( vim.keymap.set("n", "ca", vim.lsp.buf.code_action, { desc = "Perform code action" }) vim.keymap.set("n", "rn", vim.lsp.buf.rename, { desc = "Rename token under cursor" }) + + function OpenDiagnosticIfNoFloat() + for _, winid in pairs(vim.api.nvim_tabpage_list_wins(0)) do + if vim.api.nvim_win_get_config(winid).zindex then + return + end + end + -- THIS IS FOR BUILTIN LSP + vim.diagnostic.open_float{ + scope = "cursor", + focusable = false, + close_events = { + "CursorMoved", + "CursorMovedI", + "BufHidden", + "InsertCharPre", + "WinLeave", + }, + } + end + vim.keymap.set("n", "oe", OpenDiagnosticIfNoFloat, { desc = "Show full error in floating window" }) end, }, { 'dcampos/nvim-snippy',