nvim-config11/lua/plugins/conform.nvim.lua

33 lines
1 KiB
Lua
Raw Normal View History

return {
'stevearc/conform.nvim',
opts = {
formatters_by_ft = {
javascript = { "prettierd", "prettier", stop_after_first = true },
kulala = { "kulala-fmt" },
},
},
init = function()
local FILETYPES_TO_FORMAT_ON_SAVE = {
"javascript", "javascriptreact", "typescript", "typescriptreact",
"kulala", "lua", "go", "rust", "toml", "json", "yaml", "java" }
vim.api.nvim_create_autocmd("BufWritePre", {
pattern = "*",
callback = function(args)
local ft = vim.bo[args.buf].filetype
for _, t in ipairs(FILETYPES_TO_FORMAT_ON_SAVE) do
if ft == t then
require("conform").format({
bufnr = args.buf,
timeout_ms = 500,
lsp_format = "fallback",
})
return
end
end
end,
})
end
}