Add manual buffer format command
This commit is contained in:
@@ -525,11 +525,34 @@ local function apply_biome_save_actions(bufnr)
|
|||||||
end
|
end
|
||||||
|
|
||||||
function M.format.setup()
|
function M.format.setup()
|
||||||
require('conform').setup({
|
local conform = require('conform')
|
||||||
|
|
||||||
|
conform.setup({
|
||||||
formatters_by_ft = (M.general and M.general.formatters_by_ft) or {},
|
formatters_by_ft = (M.general and M.general.formatters_by_ft) or {},
|
||||||
default_format_opts = { stop_after_first = true, lsp_format = 'fallback' },
|
default_format_opts = { stop_after_first = true, lsp_format = 'fallback' },
|
||||||
})
|
})
|
||||||
|
|
||||||
|
local function format_buffer(bufnr)
|
||||||
|
conform.format({ bufnr = bufnr, timeout_ms = 500, lsp_format = 'fallback' })
|
||||||
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_user_command('Format', function(args)
|
||||||
|
local bufnr = vim.api.nvim_get_current_buf()
|
||||||
|
local ft = vim.trim(args.args)
|
||||||
|
|
||||||
|
if ft ~= '' then
|
||||||
|
vim.bo[bufnr].filetype = ft
|
||||||
|
end
|
||||||
|
|
||||||
|
format_buffer(bufnr)
|
||||||
|
end, {
|
||||||
|
nargs = '?',
|
||||||
|
complete = function(arg_lead)
|
||||||
|
return vim.fn.getcompletion(arg_lead, 'filetype')
|
||||||
|
end,
|
||||||
|
desc = 'Format current buffer',
|
||||||
|
})
|
||||||
|
|
||||||
vim.api.nvim_create_autocmd('BufWritePre', {
|
vim.api.nvim_create_autocmd('BufWritePre', {
|
||||||
group = vim.api.nvim_create_augroup('language-manager.format', { clear = true }),
|
group = vim.api.nvim_create_augroup('language-manager.format', { clear = true }),
|
||||||
callback = function(args)
|
callback = function(args)
|
||||||
@@ -538,7 +561,7 @@ function M.format.setup()
|
|||||||
end
|
end
|
||||||
|
|
||||||
apply_biome_save_actions(args.buf)
|
apply_biome_save_actions(args.buf)
|
||||||
require('conform').format({ bufnr = args.buf, timeout_ms = 500, lsp_format = 'fallback' })
|
format_buffer(args.buf)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user