dotfiles/symlinks/config/nvim/lua/esensar/lsp/null-ls_sources/gdlint.lua

34 lines
781 B
Lua

local null_ls = require("null-ls")
local helpers = require("null-ls.helpers")
return {
name = "gdlint",
meta = {
url = "https://github.com/Scony/godot-gdscript-toolkit",
description = "Linter for GDScript",
},
method = null_ls.methods.DIAGNOSTICS_ON_SAVE,
filetypes = { "gdscript" },
generator = helpers.generator_factory({
command = "gdlint",
args = { "$FILENAME" },
format = "line",
from_stderr = true,
multiple_files = true,
check_exit_code = function(code)
return code == 0
end,
on_output = helpers.diagnostics.from_patterns({
{
pattern = "(.+):(%d+): Error: (.*)",
groups = { "filename", "row", "message" },
overrides = {
diagnostic = {
severity = helpers.diagnostics.severities.error,
},
},
},
}),
}),
}