From 40eeea3bd94147d4a40c17e3cbd1838b0c261ae0 Mon Sep 17 00:00:00 2001 From: Robert Morrison Date: Tue, 11 Apr 2023 22:53:55 +0100 Subject: [PATCH] feat(LSP): Add support for autoformatting in C# Make the omnisharp language server format C# files on write. --- after/plugin/LSP.lua | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/after/plugin/LSP.lua b/after/plugin/LSP.lua index 304896b..88c19b4 100644 --- a/after/plugin/LSP.lua +++ b/after/plugin/LSP.lua @@ -22,6 +22,25 @@ modules["mason-lspconfig"].setup_handlers { modules["lspconfig"][server_name].setup { capabilities = capabilities } + end, + ["omnisharp"] = function () + modules["lspconfig"]["omnisharp"].setup { + capabilities = capabilities, + on_attach = function (client,buffnr) + vim.notify("attaching to CS buffer {" .. buffnr .. "}") + local gr = vim.api.nvim_create_augroup("CS-OnAttach",{}) + vim.api.nvim_create_autocmd({"BufWritePre"}, { + group = gr, + pattern = {"*.cs"}, + desc = "(C#) Format before write", + callback = function () + vim.lsp.buf.format() + end + } + ) + vim.notify("Attached to CS buffer") + end + } end }