nvim + pi / bi-directional communication
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243local M = {}
local source = require('pi-nvim.actions.source')
---@class pi.Diagnostic---@field line number---@field col number---@field message string---@field severity "error"|"warning"|"info"|"hint"---@field source? string
---@return pi.Diagnostic[]function M.execute() local bufnr = source.get_buf() if not bufnr then return {} end local diagnostics = vim.diagnostic.get(bufnr)
local severity_map = { [vim.diagnostic.severity.ERROR] = 'error', [vim.diagnostic.severity.WARN] = 'warning', [vim.diagnostic.severity.INFO] = 'info', [vim.diagnostic.severity.HINT] = 'hint', }
---@type pi.Diagnostic[] local result = {} for _, d in ipairs(diagnostics) do table.insert(result, { line = d.lnum + 1, col = d.col + 1, message = d.message, severity = severity_map[d.severity] or 'info', source = d.source, }) end
return resultend
return M