summaryrefslogtreecommitdiff
path: root/lua/config/plugins/formatting.lua
blob: 8a4c6ab78993867fa6e4e53126f123a1753681bf (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
return {
	{
		"conform.nvim",
		event = "DeferredUIEnter",
		after = function(_)
			vim.opt.formatexpr = "v:lua.require'conform'.formatexpr()"

			require("conform").setup({
				formatters_by_ft = {
					lua = { "stylua" },
					nix = { "nixfmt" },
				},
			})

			vim.api.nvim_create_autocmd("BufWritePre", {
				pattern = "*",
				callback = function(args)
					require("conform").format({ bufnr = args.buf })
				end,
			})
		end,
	},
}