-- docs -> https://github.com/stevearc/conform.nvim return { { "conform.nvim", enabled = nixCats("format") or false, keys = { { "p", desc = "Format File (pretty :3)" }, }, after = function(plugin) local conform = require("conform") conform.setup({ formatters_by_ft = { lua = nixCats("lang.lua.format") and { "stylua" } or nil, nix = nixCats("lang.nix.format") and { "nixfmt" } or nil, rust = nixCats("lang.rust.format") and { "rustfmt", lsp_format = "fallback" } or nil, haskell = nixCats("lang.haskell.format") and { "ormolu" } or nil, }, format_on_save = { timeout_ms = 500, }, }) vim.keymap.set({ "n", "v" }, "p", function() conform.format({ lsp_fallback = false, async = false, timeout_ms = 1000, }) end, { desc = "Format File (pretty :3)" }) end, }, }