From d181c644bdc693673c4974190d9b04052fe7b068 Mon Sep 17 00:00:00 2001 From: Devon Tingley Date: Tue, 13 Dec 2022 18:19:03 -0500 Subject: [PATCH] Update format in neovim --- nvim/lua/lsp.lua | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/nvim/lua/lsp.lua b/nvim/lua/lsp.lua index 08a6946..c866c3e 100644 --- a/nvim/lua/lsp.lua +++ b/nvim/lua/lsp.lua @@ -7,15 +7,21 @@ require('mason-lspconfig').setup({ }) -- Format on save -vim.api.nvim_create_autocmd( - 'BufWritePre', - { - pattern = { '' }, - callback = function() - vim.lsp.buf.format({}) - end, - } -) +local on_attach = function(client, bufnr) + if not client.supports_method("textDocument/formatting") then + return + end + + vim.api.nvim_create_autocmd( + 'BufWritePre', + { + buffer = bufnr, + callback = function() + vim.lsp.buf.format() + end, + } + ) +end -- Language Servers @@ -45,5 +51,6 @@ for _, server in ipairs(language_servers) do require('lspconfig')[server].setup({ capabilities = capabilities, settings = settings, + on_attach = on_attach, }) end