aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lua/conform/formatters/injected.lua3
-rw-r--r--lua/conform/runner.lua10
2 files changed, 11 insertions, 2 deletions
diff --git a/lua/conform/formatters/injected.lua b/lua/conform/formatters/injected.lua
index edc2c66..b3d80a9 100644
--- a/lua/conform/formatters/injected.lua
+++ b/lua/conform/formatters/injected.lua
@@ -239,4 +239,7 @@ return {
apply_format_results()
end
end,
+ -- TODO this is kind of a hack. It's here to ensure all_support_range_formatting is set properly.
+ -- Should figure out a better way to do this.
+ range_args = true,
}
diff --git a/lua/conform/runner.lua b/lua/conform/runner.lua
index 4b166a9..9571588 100644
--- a/lua/conform/runner.lua
+++ b/lua/conform/runner.lua
@@ -48,6 +48,12 @@ M.build_cmd = function(ctx, config)
end
end
+---@param value any
+---@return boolean
+local function truthy(value)
+ return value ~= nil and value ~= false
+end
+
---@param range conform.Range
---@param start_a integer
---@param end_a integer
@@ -506,9 +512,9 @@ M.format_lines_async = function(bufnr, formatters, range, input_lines, opts, cal
final_err = errors.coalesce(final_err, err)
end
input_lines = output or input_lines
+ all_support_range_formatting = all_support_range_formatting and truthy(config.range_args)
run_next_formatter()
end)
- all_support_range_formatting = all_support_range_formatting and config.range_args ~= nil
end
run_next_formatter()
end
@@ -584,7 +590,7 @@ M.format_lines_sync = function(bufnr, formatters, timeout_ms, range, input_lines
result = output
end
)
- all_support_range_formatting = all_support_range_formatting and config.range_args ~= nil
+ all_support_range_formatting = all_support_range_formatting and truthy(config.range_args)
local wait_result, wait_reason = vim.wait(remaining, function()
return done