33 lines
923 B
Lua
33 lines
923 B
Lua
-- Get LSP capabilities with cmp support
|
|
local capabilities = vim.lsp.protocol.make_client_capabilities()
|
|
local ok, cmp_nvim_lsp = pcall(require, 'cmp_nvim_lsp')
|
|
if ok then
|
|
capabilities = vim.tbl_deep_extend('force', capabilities, cmp_nvim_lsp.default_capabilities())
|
|
end
|
|
|
|
-- Lua LSP configuration for vim.lsp.enable()
|
|
return {
|
|
name = 'lua_ls',
|
|
cmd = { 'lua-language-server' },
|
|
filetypes = { 'lua' },
|
|
root_dir = vim.fs.dirname(vim.fs.find({ '.luarc.json', '.luarc.jsonc', '.stylua.toml', 'stylua.toml', 'selene.toml' }, { upward = true })[1]),
|
|
capabilities = capabilities,
|
|
settings = {
|
|
Lua = {
|
|
completion = {
|
|
callSnippet = 'Replace',
|
|
},
|
|
diagnostics = {
|
|
globals = { 'vim' },
|
|
},
|
|
workspace = {
|
|
library = vim.api.nvim_get_runtime_file('', true),
|
|
checkThirdParty = false,
|
|
},
|
|
telemetry = {
|
|
enable = false,
|
|
},
|
|
},
|
|
},
|
|
}
|