diff options
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/diagnostic.lua | 26 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/lualine.lua | 20 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/plugins/sessions.lua | 1 | ||||
-rw-r--r-- | nvim/.config/nvim/lua/tobyvin/utils/diagnostic.lua | 14 |
4 files changed, 29 insertions, 32 deletions
diff --git a/nvim/.config/nvim/lua/tobyvin/diagnostic.lua b/nvim/.config/nvim/lua/tobyvin/diagnostic.lua index b031cb1..88953bb 100644 --- a/nvim/.config/nvim/lua/tobyvin/diagnostic.lua +++ b/nvim/.config/nvim/lua/tobyvin/diagnostic.lua @@ -1,4 +1,4 @@ -local utils = require("tobyvin.utils.diagnostic") +local diagnostic = require("tobyvin.utils.diagnostic") vim.diagnostic.config({ virtual_text = { @@ -9,26 +9,20 @@ vim.diagnostic.config({ update_in_insert = true, severity_sort = true, float = { + source = "always", border = "single", scope = "cursor", }, }) -vim.fn.sign_define("DiagnosticSignError", utils.signs.error) -vim.fn.sign_define("DiagnosticSignWarn", utils.signs.warn) -vim.fn.sign_define("DiagnosticSignInfo", utils.signs.info) -vim.fn.sign_define("DiagnosticSignHint", utils.signs.hint) +vim.fn.sign_define("DiagnosticSignError", diagnostic.signs.error) +vim.fn.sign_define("DiagnosticSignWarn", diagnostic.signs.warn) +vim.fn.sign_define("DiagnosticSignInfo", diagnostic.signs.info) +vim.fn.sign_define("DiagnosticSignHint", diagnostic.signs.hint) -vim.keymap.set("n", "]d", utils.goto_next, { desc = "next diagnostic" }) -vim.keymap.set("n", "[d", utils.goto_prev, { desc = "prev diagnostic" }) vim.keymap.set("n", "gl", vim.diagnostic.open_float, { desc = "open diagnostic float" }) vim.keymap.set("n", "gL", vim.diagnostic.setqflist, { desc = "qf diagnostic" }) - -vim.api.nvim_create_autocmd("CursorHold", { - callback = function() - vim.diagnostic.open_float({ - focus = false, - close_events = { "InsertEnter", "CursorMoved" }, - }) - end, -}) +vim.keymap.set("n", "]g", vim.diagnostic.goto_next, { desc = "next diagnostic" }) +vim.keymap.set("n", "[g", vim.diagnostic.goto_prev, { desc = "prev diagnostic" }) +vim.keymap.set("n", "]G", diagnostic.goto_next_workspace, { desc = "next workspace diagnostic" }) +vim.keymap.set("n", "[G", diagnostic.goto_prev_workspace, { desc = "prev workspace diagnostic" }) diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/lualine.lua b/nvim/.config/nvim/lua/tobyvin/plugins/lualine.lua index 0edc5e2..561dcff 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/lualine.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/lualine.lua @@ -10,7 +10,7 @@ local M = { function M.config() local lualine = require("lualine") - local utils = require("tobyvin.utils.diagnostic") + local diagnostic = require("tobyvin.utils.diagnostic") local winbar_cond = function() return vim.bo.buflisted and (vim.fn.bufname() ~= "" or require("nvim-navic").is_available()) @@ -53,19 +53,19 @@ function M.config() lualine_c = { { "diagnostics", - source = { utils.count }, + source = { diagnostic.count }, symbols = { - error = utils.signs.error.text, - warn = utils.signs.warn.text, - info = utils.signs.info.text, - hint = utils.signs.hint.text, + error = diagnostic.signs.error.text, + warn = diagnostic.signs.warn.text, + info = diagnostic.signs.info.text, + hint = diagnostic.signs.hint.text, }, diagnostics_color = { - error = utils.signs.error.hl, - warn = utils.signs.warn.hl, - info = utils.signs.info.hl, - hint = utils.signs.hint.hl, + error = diagnostic.signs.error.hl, + warn = diagnostic.signs.warn.hl, + info = diagnostic.signs.info.hl, + hint = diagnostic.signs.hint.hl, }, update_in_insert = true, color = "StatusLineNC", diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/sessions.lua b/nvim/.config/nvim/lua/tobyvin/plugins/sessions.lua index fd0e1ee..11968c4 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/sessions.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/sessions.lua @@ -1,3 +1,4 @@ +---@diagnostic disable: missing-parameter, duplicate-set-field local M = { "echasnovski/mini.sessions", name = "sessions", diff --git a/nvim/.config/nvim/lua/tobyvin/utils/diagnostic.lua b/nvim/.config/nvim/lua/tobyvin/utils/diagnostic.lua index af0be41..9a41639 100644 --- a/nvim/.config/nvim/lua/tobyvin/utils/diagnostic.lua +++ b/nvim/.config/nvim/lua/tobyvin/utils/diagnostic.lua @@ -61,10 +61,12 @@ end local function get_buffers(opts) local buffers = {} + local diagnostics = vim.diagnostic.get(nil, opts) for _, diagnostic in ipairs(diagnostics) do - if not vim.tbl_contains(buffers, diagnostic.bufnr) then - table.insert(buffers, diagnostic.bufnr) + local bufnr = diagnostic.bufnr --[[@as number]] + if not vim.tbl_contains(buffers, bufnr) then + table.insert(buffers, bufnr) end end @@ -112,8 +114,8 @@ end ---@param opts table? ---@param search_forward boolean Search forward local function goto_diagnostic(opts, search_forward) - opts = vim.F.if_nil(opts, {}) - opts.wrap = vim.F.if_nil(opts.wrap, true) + opts = opts or {} + opts.wrap = opts.wrap == nil or opts.wrap local win_id = opts.win_id or vim.api.nvim_get_current_win() local get_pos, goto_pos @@ -141,14 +143,14 @@ end --- Move to the next diagnostic in the workspace. --- ---@param opts table? -function M.goto_next(opts) +function M.goto_next_workspace(opts) goto_diagnostic(opts, true) end --- Move to the prev diagnostic in the workspace. --- ---@param opts table? -function M.goto_prev(opts) +function M.goto_prev_workspace(opts) goto_diagnostic(opts, false) end |