summaryrefslogtreecommitdiff
path: root/.config/nvim-old/lua/config/plugins/conform.lua
diff options
context:
space:
mode:
Diffstat (limited to '.config/nvim-old/lua/config/plugins/conform.lua')
-rw-r--r--.config/nvim-old/lua/config/plugins/conform.lua40
1 files changed, 40 insertions, 0 deletions
diff --git a/.config/nvim-old/lua/config/plugins/conform.lua b/.config/nvim-old/lua/config/plugins/conform.lua
new file mode 100644
index 0000000..5747200
--- /dev/null
+++ b/.config/nvim-old/lua/config/plugins/conform.lua
@@ -0,0 +1,40 @@
+return {
+ "stevearc/conform.nvim",
+ event = "VeryLazy",
+ keys = {
+ {
+ "<leader>f",
+ function()
+ require("conform").format({ async = true, lsp_format = "fallback" })
+ end,
+ mode = "",
+ desc = "Format buffer",
+ },
+ },
+
+ opts = {
+ formatters_by_ft = {
+ lua = { "stylua" },
+ python = { "isort", "black" },
+ rust = { "rustfmt" },
+ javascript = { "prettierd", "prettier", stop_after_first = true },
+ typescript = { "prettierd", "prettier", stop_after_first = true },
+ typescriptreact = { "prettierd", "prettier", stop_after_first = true },
+ css = { "prettierd", "prettier", stop_after_first = true },
+ html = { "prettierd", "prettier", stop_after_first = true },
+ typst = { "prettypst" },
+ xml = { "xmlformatter" },
+ },
+ format_on_save = {
+ timeout_ms = 500,
+ lsp_format = "fallback",
+ },
+ formatters = {
+ xmlformat = {
+ command = "xmlformat",
+ args = { "--selfclose", "-" },
+ stdin = true,
+ },
+ },
+ },
+}