From 385bf1bd50f2202e763316ded934b9e916f71b40 Mon Sep 17 00:00:00 2001 From: Dinesh Salunke Date: Sat, 8 Jun 2024 17:26:10 +0530 Subject: [PATCH] refactor: replace formatter plugin with conform --- lazy-lock.json | 2 +- lua/config/autocmds.lua | 6 ----- lua/plugins/coding.lua | 49 ++++++++++++++--------------------------- 3 files changed, 17 insertions(+), 40 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index 15e330e..b38b27f 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -10,9 +10,9 @@ "cmp-nvim-lua": { "branch": "main", "commit": "f12408bdb54c39c23e67cab726264c10db33ada8" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, + "conform.nvim": { "branch": "master", "commit": "069e971295a34a810484b7b2ef54b3c735214181" }, "dressing.nvim": { "branch": "master", "commit": "e3714c8049b2243e792492c4149e4cc395c68eb9" }, "flash.nvim": { "branch": "main", "commit": "43f67935d388fbb540f8b40e8cbfd80de54f978a" }, - "formatter.nvim": { "branch": "master", "commit": "ad246d34ce7a32f752071ed81b09b94e6b127fad" }, "gitsigns.nvim": { "branch": "main", "commit": "4a143f13e122ab91abdc88f89eefbe70a4858a56" }, "glow.nvim": { "branch": "main", "commit": "238070a686c1da3bccccf1079700eb4b5e19aea4" }, "indent-blankline.nvim": { "branch": "master", "commit": "d98f537c3492e87b6dc6c2e3f66ac517528f406f" }, diff --git a/lua/config/autocmds.lua b/lua/config/autocmds.lua index 3b36e96..a8adff1 100644 --- a/lua/config/autocmds.lua +++ b/lua/config/autocmds.lua @@ -35,9 +35,3 @@ vim.api.nvim_create_autocmd("BufEnter", { end end, }) - -vim.api.nvim_create_augroup("__formatter__", { clear = true }) -vim.api.nvim_create_autocmd("BufWritePost", { - group = "__formatter__", - command = ":FormatWrite" -}) diff --git a/lua/plugins/coding.lua b/lua/plugins/coding.lua index 25b221a..20edf40 100644 --- a/lua/plugins/coding.lua +++ b/lua/plugins/coding.lua @@ -133,41 +133,24 @@ return { }, { - "mhartington/formatter.nvim", + "stevearc/conform.nvim", opts = {}, config = function() - local formatter = require("formatter") - formatter.setup({ - filetype = { - lua = { - require("formatter.filetypes.lua").stylua, - }, - typescript = { - require("formatter.filetypes.typescript").prettierd, - require("formatter.filetypes.typescript").eslint_d, - }, - typescriptreact = { - require("formatter.filetypes.typescript").prettierd, - require("formatter.filetypes.typescript").eslint_d, - }, - javascript = { - require("formatter.filetypes.typescript").prettierd, - require("formatter.filetypes.typescript").eslint_d, - }, - javascriptreact = { - require("formatter.filetypes.typescript").prettierd, - require("formatter.filetypes.typescript").eslint_d, - }, - json = { - require("formatter.filetypes.typescript").prettierd, - }, - jsonc = { - require("formatter.filetypes.typescript").prettierd, - }, - go = { - require("formatter.filetypes.go").gofumpt, - require("formatter.filetypes.go").goimports, - }, + local confrom = require("conform") + confrom.setup({ + log_level = vim.log.levels.DEBUG, + formatters_by_ft = { + lua = { "stylua" }, + javascript = { "prettierd", "eslint_d" }, + typescript = { "prettierd", "eslint_d" }, + typescriptreact = { "prettierd", "eslint_d" }, + json = { "prettierd" }, + jsonc = { "prettierd" }, + go = { "gofumpt", "goimports" }, + }, + format_on_save = { + timeout_ms = 500, + lsp_fallback = true, }, }) end,