return { 'stevearc/conform.nvim', event = { 'BufReadPre', 'BufNewFile' }, config = function() local conform = require('conform') conform.setup({ formatters_by_ft = { lua = { 'stylua' }, cpp = { 'clang-format' }, c = { 'clang-format' }, html = { 'prettier' }, css = { 'prettier' }, javascript = { 'prettier' }, python = { 'autopep8', 'isort' }, bash = { 'beautysh' }, csh = { 'beautysh' }, ksh = { 'beautysh' }, sh = { 'beautysh' }, zsh = { 'beautysh' }, }, -- format_on_save = { -- lsp_fallback = true, -- async = false, -- timeout_ms = 1000, -- }, }) vim.keymap.set({ 'n', 'v' }, 'cf', function() conform.format({ lsp_fallback = true, async = false, timeout_ms = 1000, }) end, { desc = 'Format file or range (in visual mode)' }) end, }