local null_ls = require("null-ls") local sources = { null_ls.builtins.formatting.stylua, null_ls.builtins.formatting.goimports_reviser, null_ls.builtins.formatting.golines.with({ extra_args = { "--max-len=180", "--base-formatter=gofumpt", }, }), null_ls.builtins.formatting.eslint_d, null_ls.builtins.formatting.yamlfmt, null_ls.builtins.formatting.protolint, -- 诊断 null_ls.builtins.diagnostics.eslint_d, null_ls.builtins.diagnostics.protolint, } local gotest = require("go.null_ls").gotest() local gotest_codeaction = require("go.null_ls").gotest_action() local golangci_lint = require("go.null_ls").golangci_lint() table.insert(sources, gotest) table.insert(sources, golangci_lint) table.insert(sources, gotest_codeaction) null_ls.setup({ debounce = 1000, default_timeout = 5000, sources = sources, }) null_ls.register(gotest)