aboutsummaryrefslogtreecommitdiffstats
path: root/lua/conform
diff options
context:
space:
mode:
authorSteven Arcangeli <stevearc@stevearc.com>2023-10-26 08:46:07 -0700
committerSteven Arcangeli <stevearc@stevearc.com>2023-10-26 08:46:07 -0700
commit278bcd8bf2017e187e963b515017341fdd87fe2f (patch)
treee4c2526f7a3aa63256e7ffca7ecce6a955d287d6 /lua/conform
parente4ecb6e8ed3163c86d7e647f1dc3d94de77ca687 (diff)
fix(formatexpr): use default formatexpr if no formatters or LSP clients (#55)
Diffstat (limited to 'lua/conform')
-rw-r--r--lua/conform/init.lua3
1 files changed, 2 insertions, 1 deletions
diff --git a/lua/conform/init.lua b/lua/conform/init.lua
index 724aad6..23c3818 100644
--- a/lua/conform/init.lua
+++ b/lua/conform/init.lua
@@ -665,6 +665,7 @@ M.will_fallback_lsp = function(options)
end
M.formatexpr = function(opts)
+ local lsp_format = require("conform.lsp_format")
-- Change the defaults slightly from conform.format
opts = vim.tbl_deep_extend("keep", opts or {}, {
timeout_ms = 500,
@@ -692,7 +693,7 @@ M.formatexpr = function(opts)
}
if M.format(opts) then
return 0
- elseif opts.lsp_fallback then
+ elseif opts.lsp_fallback and not vim.tbl_isempty(lsp_format.get_format_clients(opts)) then
-- No formatters were available; fall back to lsp formatter
return vim.lsp.formatexpr({ timeout_ms = opts.timeout_ms })
else