return { "mfussenegger/nvim-lint", event = { "BufReadPre", "BufNewFile", }, config = function() local lint = require("lint") lint.linters_by_ft = { python = { "flake8", "mypy" }, yaml = { "yamllint" }, json = { "jsonlint" } } local lint_augroup = vim.api.nvim_create_augroup("lint", { clear = true }) vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, { group = lint_augroup, callback = function() lint.try_lint() end, }) local mason_tool_installer = require("mason-tool-installer") mason_tool_installer.setup({ ensure_installed = { "prettier", "stylua", "isort", "black", "flake8", "mypy", "revive", }, }) end, }