diff options
Diffstat (limited to 'nvim/.config')
-rw-r--r-- | nvim/.config/nvim/lua/plugins/conform.lua | 25 |
1 files changed, 24 insertions, 1 deletions
diff --git a/nvim/.config/nvim/lua/plugins/conform.lua b/nvim/.config/nvim/lua/plugins/conform.lua index 0099069..baeb493 100644 --- a/nvim/.config/nvim/lua/plugins/conform.lua +++ b/nvim/.config/nvim/lua/plugins/conform.lua @@ -61,7 +61,30 @@ local M = { } function M:init() - vim.o.formatexpr = "v:lua.require'conform'.formatexpr()" + U.formatexpr = function(...) + if not pcall(require, "fidget.progress") then + return require("conform").formatexpr(...) + end + + local bufnr = vim.api.nvim_get_current_buf() + local handle = require("fidget.progress").handle.create({ + title = "Formatting", + message = string.format("buffer: %s", bufnr), + lsp_client = { name = "conform" }, + }) + + local err = require("conform").formatexpr() + if err == 1 then + handle.message = "Failed" + else + handle.message = "Completed" + end + + handle:finish() + return err + end + + vim.o.formatexpr = "v:lua.U.formatexpr()" end return M |