summaryrefslogtreecommitdiff
path: root/lua/lsp/null-ls/formatters.lua
diff options
context:
space:
mode:
authorLuc Sinet <[email protected]>2021-10-09 13:45:34 +0200
committerGitHub <[email protected]>2021-10-09 13:45:34 +0200
commitb524100f016de6b934894547d48f9ef811902397 (patch)
treea810e47fededc67da39252d29f2438ab71cf2881 /lua/lsp/null-ls/formatters.lua
parentefd82c87568a791b2f7fb9c94b763f2c1950dc8e (diff)
feat: support wildcard filetypes for null-ls providers (#1447)
Co-authored-by: kylo252 <[email protected]>
Diffstat (limited to 'lua/lsp/null-ls/formatters.lua')
-rw-r--r--lua/lsp/null-ls/formatters.lua9
1 files changed, 6 insertions, 3 deletions
diff --git a/lua/lsp/null-ls/formatters.lua b/lua/lsp/null-ls/formatters.lua
index d6455d5f..4728b908 100644
--- a/lua/lsp/null-ls/formatters.lua
+++ b/lua/lsp/null-ls/formatters.lua
@@ -13,9 +13,11 @@ end
function M.list_available(filetype)
local formatters = {}
+ local tbl = require "utils.table"
for _, provider in pairs(null_ls.builtins.formatting) do
- -- TODO: Add support for wildcard filetypes
- if vim.tbl_contains(provider.filetypes or {}, filetype) then
+ if tbl.contains(provider.filetypes or {}, function(ft)
+ return ft == "*" or ft == filetype
+ end) then
table.insert(formatters, provider.name)
end
end
@@ -27,7 +29,8 @@ function M.list_configured(formatter_configs)
local formatters, errors = {}, {}
for _, fmt_config in ipairs(formatter_configs) do
- local formatter = null_ls.builtins.formatting[fmt_config.exe]
+ local formatter_name = fmt_config.exe:gsub("-", "_")
+ local formatter = null_ls.builtins.formatting[formatter_name]
if not formatter then
Log:error("Not a valid formatter: " .. fmt_config.exe)