aboutsummaryrefslogtreecommitdiff
path: root/lua/plugins/conform.lua
blob: be4fe0da956f05b9750a29c1e8082c20040b8c35 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
vim.pack.add({
  {src = "https://github.com/stevearc/conform.nvim"},
})

vim.api.nvim_create_user_command("Format", function(args)
  local range = nil
  if args.count ~= -1 then
    local end_line = vim.api.nvim_buf_get_lines(0, args.line2 - 1, args.line2, true)[1]
    range = {
      start = { args.line1, 0 },
      ["end"] = { args.line2, end_line:len() },
    }
  end
  require("conform").format({ async = true, lsp_format = "fallback", range = range })
end, { range = true })

vim.keymap.set("n", "<Leader>lf", ":Format<CR>", { desc = "Format buffer with available lsp" })