Files
dotfiles/nvim/lua/lsp/null-ls.lua

38 lines
895 B
Lua

local null_ls = require("null-ls")
local b = null_ls.builtins
-- https://github.com/jose-elias-alvarez/null-ls.nvim/pull/804
local buf_path_in_workflow_folder = function()
local api = vim.api
local path = api.nvim_buf_get_name(api.nvim_get_current_buf())
return path:match("github/workflows/") ~= nil
end
local sources = {
b.diagnostics.actionlint.with({
runtime_condition = buf_path_in_workflow_folder,
}),
function()
local nl_utils = require("null-ls.utils").make_conditional_utils()
return nl_utils.root_has_file({ ".prettierrc.json", ".prettierrc" })
and b.formatting.prettierd.with({ filetypes = { "html", "javascript", "typescript", "svelte" } })
or b.formatting.eslint_d
end,
b.formatting.black,
b.formatting.stylua,
}
local M = {}
M.setup = function(on_attach)
null_ls.setup({
debug = false,
sources = sources,
on_attach = on_attach,
})
end
return M