aboutsummaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins/eslint.lua
diff options
context:
space:
mode:
authordacctal <120422854+dacctal@users.noreply.github.com>2026-03-05 01:21:45 +0000
committerdacctal <120422854+dacctal@users.noreply.github.com>2026-03-05 01:21:45 +0000
commit69a722cfd33076a4d63f1d49e52bed427453eabe (patch)
tree56545e93c12a8232058a0ab2b258546418656e03 /.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.lua41
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,
+}