diff --git a/lua/plugins/javascript.lua b/lua/plugins/javascript.lua index ea0a918..14c2ec1 100644 --- a/lua/plugins/javascript.lua +++ b/lua/plugins/javascript.lua @@ -13,7 +13,7 @@ if pcode.active_javascript_config.active then "williamboman/mason-lspconfig.nvim", opts = function(_, opts) opts.ensure_installed = opts.ensure_installed or {} - vim.list_extend(opts.ensure_installed, { "html", "cssls", "emmet_ls", "jsonls", "tsserver" }) + vim.list_extend(opts.ensure_installed, { "html", "eslint", "cssls", "emmet_ls", "jsonls", "tsserver" }) end, }, { @@ -30,7 +30,7 @@ if pcode.active_javascript_config.active then opts = function(_, opts) opts.linters_by_ft = opts.linters_by_ft or {} require("user.utils.masoncfg").try_install("eslint_d") - opts.linters_by_ft.javascript = { "eslint" } + opts.linters_by_ft.javascript = { "eslint_d" } end, }, { diff --git a/lua/plugins/nvimlint.lua b/lua/plugins/nvimlint.lua index 232059c..69650d0 100644 --- a/lua/plugins/nvimlint.lua +++ b/lua/plugins/nvimlint.lua @@ -64,10 +64,17 @@ return { ["yamllint"] = "yamllint", } + -- add new mapping filetype + local addnew = { + ["typescriptreact"] = "eslint_d", + ["javascriptreact"] = "eslint_d", + } + local ignore = { ["php"] = "tlint", } + -- local listtest = {} for _, pkg in pairs(mason_reg.get_installed_packages()) do for _, type in pairs(pkg.spec.categories) do -- only act upon a Linter @@ -80,9 +87,23 @@ return { if keymap[ftl] ~= nil then ftl = keymap[ftl] end + + -- if substring(pkg.spec.name, "eslint") then + -- table.insert(listtest, ftl) + -- end + if name_map[pkg.spec.name] ~= nil then pkg.spec.name = name_map[pkg.spec.name] end + + -- add new mapping language + for key, value in pairs(addnew) do + if value == pkg.spec.name then + opts.linters_by_ft[key] = opts.linters_by_ft[key] or {} + table.insert(opts.linters_by_ft[key], pkg.spec.name) + end + end + if ignore[ftl] ~= pkg.spec.name then opts.linters_by_ft[ftl] = opts.linters_by_ft[ftl] or {} table.insert(opts.linters_by_ft[ftl], pkg.spec.name) @@ -92,6 +113,7 @@ return { end end end + -- print(table.concat(listtest, ",")) end, config = function(_, opts) require("lint").linters_by_ft = opts.linters_by_ft