local lspconfig = require('lspconfig') local lsp_status = require('lsp-status') lsp_status.register_progress() -- Some arbitrary servers lspconfig.clangd.setup({ handlers = lsp_status.extensions.clangd.setup(), init_options = { clangdFileStatus = true }, on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.rust_analyzer.setup({ on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.pyright.setup({ on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.elmls.setup({ on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.svelte.setup({ on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.tsserver.setup({ on_attach = lsp_status.on_attach, capabilities = lsp_status.capabilities }) lspconfig.gdscript.setup({ on_attach = function (client) local _notify = client.notify client.notify = function (method, params) if method == 'textDocument/didClose' then -- Godot doesn't implement didClose yet return end _notify(method, params) end lsp_status.on_attach(client) end, capabilities = lsp_status.capabilities, flags = { debounce_text_changes = 150, } })