nvim: add commands FormatDisable and FormatEnable

This commit is contained in:
Łukasz Pankowski 2025-06-07 11:08:57 +02:00
parent 867e3d6991
commit dba234077e

View File

@ -1,4 +1,23 @@
require 'lspconfig'.ols.setup {}
vim.api.nvim_create_user_command("FormatDisable", function(args)
if args.bang then
-- FormatDisable! will disable formatting just for this buffer
vim.b.disable_autoformat = true
else
vim.g.disable_autoformat = true
end
end, {
desc = "Disable autoformat-on-save",
bang = true,
})
vim.api.nvim_create_user_command("FormatEnable", function()
vim.b.disable_autoformat = false
vim.g.disable_autoformat = false
end, {
desc = "Re-enable autoformat-on-save",
})
return {
{
"stevearc/conform.nvim",
@ -18,10 +37,13 @@ return {
formatters_by_ft = {
odin = { "odinfmt" },
},
format_on_save = {
lsp_format = "fallback",
timeout_ms = 500,
}
format_on_save = function(bufnr)
-- Disable with a global or buffer-local variable
if vim.g.disable_autoformat or vim.b[bufnr].disable_autoformat then
return
end
return { timeout_ms = 500, lsp_format = "fallback" }
end,
},
}
}