✨ feat: add nvim-lint for code linting and update auto-install config

This commit is contained in:
sankalp committed 2025-07-25 14:27:36 +05:45
1 parent 1cc51f2774
commit 5c803c0175
6 files changed
+92 -33

No files matched your search

+31
View File
@@ -0,0 +1,31 @@
local lint = require('lint')
-- Filetype to linters mapping
lint.linters_by_ft = {
javascript = { 'eslint_d' },
typescript = { 'eslint_d' },
javascriptreact = { 'eslint_d' },
typescriptreact = { 'eslint_d' },
dockerfile = { 'hadolint' },
vim = { 'vint' },
markdown = { 'write_good', 'markdownlint' },
text = { 'write_good' },
sh = { 'shellcheck' },
yaml = { 'actionlint' },
}
-- Trigger linting on save and buffer events
vim.api.nvim_create_autocmd({ 'BufWritePost', 'BufReadPost', 'InsertLeave' }, {
callback = function()
lint.try_lint()
end,
})
-- Setup mason-nvim-lint to auto-install linters
local auto_install = require('lib.util').get_user_config('auto_install', true)
local installed_linters = require('plugins.list').linter_sources or {}
require('mason-nvim-lint').setup({
ensure_installed = installed_linters,
automatic_installation = auto_install,
})