summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lua/lsp/null-ls/formatters.lua8
-rw-r--r--lua/lsp/null-ls/init.lua10
-rw-r--r--lua/lsp/null-ls/linters.lua10
3 files changed, 17 insertions, 11 deletions
diff --git a/lua/lsp/null-ls/formatters.lua b/lua/lsp/null-ls/formatters.lua
index 636b0bde..d6455d5f 100644
--- a/lua/lsp/null-ls/formatters.lua
+++ b/lua/lsp/null-ls/formatters.lua
@@ -23,7 +23,7 @@ function M.list_available(filetype)
return formatters
end
-function M.list_configured(formatter_configs, filetype)
+function M.list_configured(formatter_configs)
local formatters, errors = {}, {}
for _, fmt_config in ipairs(formatter_configs) do
@@ -42,7 +42,7 @@ function M.list_configured(formatter_configs, filetype)
formatters[fmt_config.exe] = formatter.with {
command = formatter_cmd,
extra_args = fmt_config.args,
- filetypes = { filetype },
+ filetypes = fmt_config.filetypes,
}
end
end
@@ -51,12 +51,12 @@ function M.list_configured(formatter_configs, filetype)
return { supported = formatters, unsupported = errors }
end
-function M.setup(formatter_configs, filetype)
+function M.setup(formatter_configs)
if vim.tbl_isempty(formatter_configs) then
return
end
- local formatters_by_ft = M.list_configured(formatter_configs, filetype)
+ local formatters_by_ft = M.list_configured(formatter_configs)
null_ls.register { sources = formatters_by_ft.supported }
end
diff --git a/lua/lsp/null-ls/init.lua b/lua/lsp/null-ls/init.lua
index 3c8909af..0d030c22 100644
--- a/lua/lsp/null-ls/init.lua
+++ b/lua/lsp/null-ls/init.lua
@@ -15,10 +15,16 @@ function M:setup()
require("lspconfig")["null-ls"].setup(lvim.lsp.null_ls.setup)
for filetype, config in pairs(lvim.lang) do
if not vim.tbl_isempty(config.formatters) then
- formatters.setup(config.formatters, filetype)
+ vim.tbl_map(function(c)
+ c.filetypes = { filetype }
+ end, config.formatters)
+ formatters.setup(config.formatters)
end
if not vim.tbl_isempty(config.linters) then
- linters.setup(config.linters, filetype)
+ vim.tbl_map(function(c)
+ c.filetypes = { filetype }
+ end, config.formatters)
+ linters.setup(config.linters)
end
end
end
diff --git a/lua/lsp/null-ls/linters.lua b/lua/lsp/null-ls/linters.lua
index 34a78a65..e60411e6 100644
--- a/lua/lsp/null-ls/linters.lua
+++ b/lua/lsp/null-ls/linters.lua
@@ -23,7 +23,7 @@ function M.list_available(filetype)
return linters
end
-function M.list_configured(linter_configs, filetype)
+function M.list_configured(linter_configs)
local linters, errors = {}, {}
for _, lnt_config in pairs(linter_configs) do
@@ -42,7 +42,7 @@ function M.list_configured(linter_configs, filetype)
linters[lnt_config.exe] = linter.with {
command = linter_cmd,
extra_args = lnt_config.args,
- filetypes = { filetype },
+ filetypes = lnt_config.filetypes,
}
end
end
@@ -51,13 +51,13 @@ function M.list_configured(linter_configs, filetype)
return { supported = linters, unsupported = errors }
end
-function M.setup(linter_configs, filetype)
+function M.setup(linter_configs)
if vim.tbl_isempty(linter_configs) then
return
end
- local linters_by_ft = M.list_configured(linter_configs, filetype)
- null_ls.register { sources = linters_by_ft.supported }
+ local linters = M.list_configured(linter_configs)
+ null_ls.register { sources = linters.supported }
end
return M