diff options
| author | dacctal <120422854+dacctal@users.noreply.github.com> | 2026-03-05 01:21:45 +0000 |
|---|---|---|
| committer | dacctal <120422854+dacctal@users.noreply.github.com> | 2026-03-05 01:21:45 +0000 |
| commit | 69a722cfd33076a4d63f1d49e52bed427453eabe (patch) | |
| tree | 56545e93c12a8232058a0ab2b258546418656e03 /.config/nvim/lua/plugins/eslint.lua | |
initial commit
Diffstat (limited to '.config/nvim/lua/plugins/eslint.lua')
| -rwxr-xr-x | .config/nvim/lua/plugins/eslint.lua | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/.config/nvim/lua/plugins/eslint.lua b/.config/nvim/lua/plugins/eslint.lua new file mode 100755 index 0000000..ba74b8a --- /dev/null +++ b/.config/nvim/lua/plugins/eslint.lua @@ -0,0 +1,41 @@ +return { + "mfussenegger/nvim-lint", + event = { "BufReadPre", "BufNewFile" }, + config = function() + local lint = require("lint") + local lint_augroup = vim.api.nvim_create_augroup("lint", { clear = true }) + local eslint = lint.linters.eslint_d + + -- if Eslint error configuration not found : change MasonInstall eslint@version or npm i -g eslint at a specific version + lint.linters_by_ft = { + javascript = { "eslint_d" }, + typescript = { "eslint_d" }, + javascriptreact = { "eslint_d" }, + typescriptreact = { "eslint_d" }, + svelte = { "eslint_d" }, + python = { "pylint" }, + } + + eslint.args = { + "--no-warn-ignored", + "--format", + "json", + "--stdin", + "--stdin-filename", + function() + return vim.fn.expand("%:p") + end, + } + + vim.api.nvim_create_autocmd({ "BufEnter", "BufWritePost", "InsertLeave" }, { + group = lint_augroup, + callback = function() + lint.try_lint() + end, + }) + + vim.keymap.set("n", "<leader>l", function() + lint.try_lint() + end, { desc = "Trigger linting for current file" }) + end, +} |
