56 lines
1.4 KiB
Lua
56 lines
1.4 KiB
Lua
|
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,
|
||
|
}
|
||
|
})
|