home: vim: use 'lsp-formatting.nvim'
A few things that are different: * Async by default. * Takes care of the order of formatters, if I ever need to do that. * Allows for easily disabling formatting (unfortunately this is global state, not buffer-local). * Gets rid of the formatting pause when doing `:wq`.
This commit is contained in:
parent
3122db6536
commit
a29deaa9bc
|
@ -67,6 +67,7 @@ in
|
||||||
|
|
||||||
# LSP and linting
|
# LSP and linting
|
||||||
nvim-lspconfig # Easy LSP configuration
|
nvim-lspconfig # Easy LSP configuration
|
||||||
|
lsp-format-nvim # Simplified formatting configuration
|
||||||
lsp_lines-nvim # Show diagnostics *over* regions
|
lsp_lines-nvim # Show diagnostics *over* regions
|
||||||
null-ls-nvim # LSP integration for linters and formatters
|
null-ls-nvim # LSP integration for linters and formatters
|
||||||
nvim-treesitter.withAllGrammars # Better highlighting
|
nvim-treesitter.withAllGrammars # Better highlighting
|
||||||
|
|
|
@ -1,5 +1,8 @@
|
||||||
local M = {}
|
local M = {}
|
||||||
|
|
||||||
|
-- Simplified LSP formatting configuration
|
||||||
|
local lsp_format = require("lsp-format")
|
||||||
|
|
||||||
-- shared LSP configuration callback
|
-- shared LSP configuration callback
|
||||||
-- @param client native client configuration
|
-- @param client native client configuration
|
||||||
-- @param bufnr int? buffer number of the attched client
|
-- @param bufnr int? buffer number of the attched client
|
||||||
|
@ -30,17 +33,7 @@ M.on_attach = function(client, bufnr)
|
||||||
})
|
})
|
||||||
|
|
||||||
-- Format on save
|
-- Format on save
|
||||||
if client.supports_method("textDocument/formatting") then
|
lsp_format.on_attach(client, bufnr)
|
||||||
local augroup = vim.api.nvim_create_augroup("LspFormatting", {})
|
|
||||||
vim.api.nvim_clear_autocmds({ group = augroup, buffer = bufnr })
|
|
||||||
vim.api.nvim_create_autocmd("BufWritePre", {
|
|
||||||
group = augroup,
|
|
||||||
buffer = bufnr,
|
|
||||||
callback = function()
|
|
||||||
vim.lsp.buf.format({ bufnr = bufnr })
|
|
||||||
end,
|
|
||||||
})
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Mappings
|
-- Mappings
|
||||||
local wk = require("which-key")
|
local wk = require("which-key")
|
||||||
|
|
3
home/vim/plugin/settings/formatting.lua
Normal file
3
home/vim/plugin/settings/formatting.lua
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
local lsp_format = require("lsp-format")
|
||||||
|
|
||||||
|
lsp_format.setup({})
|
Loading…
Reference in a new issue