diff options
| author | Simen A. W. Olsen <hello@simenandre.no> | 2024-12-27 15:33:47 +0100 |
|---|---|---|
| committer | Simen A. W. Olsen <hello@simenandre.no> | 2024-12-27 15:33:47 +0100 |
| commit | 62df997a42e292c22ee4ce6a5414735cd2e37699 (patch) | |
| tree | f677b40b7d9b070f5df1f10701f9f8c0af06085d /lua/simenandre/plugins/conform.lua | |
| parent | 9155cf33ed7533122666e193dad3f76e8a2b890f (diff) | |
| download | config.nvim-62df997a42e292c22ee4ce6a5414735cd2e37699.tar.gz config.nvim-62df997a42e292c22ee4ce6a5414735cd2e37699.zip | |
split plugins into each file
Diffstat (limited to 'lua/simenandre/plugins/conform.lua')
| -rw-r--r-- | lua/simenandre/plugins/conform.lua | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/lua/simenandre/plugins/conform.lua b/lua/simenandre/plugins/conform.lua new file mode 100644 index 0000000..ad86bfe --- /dev/null +++ b/lua/simenandre/plugins/conform.lua @@ -0,0 +1,44 @@ +return { + { -- Autoformat + "stevearc/conform.nvim", + event = { "BufWritePre" }, + cmd = { "ConformInfo" }, + keys = { + { + "<leader>f", + function() + require("conform").format({ async = true, lsp_format = "fallback" }) + end, + mode = "", + desc = "[F]ormat buffer", + }, + }, + opts = { + notify_on_error = false, + format_on_save = function(bufnr) + -- Disable "format_on_save lsp_fallback" for languages that don't + -- have a well standardized coding style. You can add additional + -- languages here or re-enable it for the disabled ones. + local disable_filetypes = { c = true, cpp = true } + local lsp_format_opt + if disable_filetypes[vim.bo[bufnr].filetype] then + lsp_format_opt = "never" + else + lsp_format_opt = "fallback" + end + return { + timeout_ms = 500, + lsp_format = lsp_format_opt, + } + end, + formatters_by_ft = { + lua = { "stylua" }, + -- Conform can also run multiple formatters sequentially + -- python = { "isort", "black" }, + -- + -- You can use 'stop_after_first' to run the first available formatter from the list + -- javascript = { "prettierd", "prettier", stop_after_first = true }, + }, + }, + }, +} |
