Files
nixos/home-modules/explicit-configs/nvim/lua/lsp/init.lua
T

25 lines
868 B
Lua
Raw Normal View History

local capabilities = require('cmp_nvim_lsp').default_capabilities()
for _, server in ipairs({ 'ts_ls', 'basedpyright', 'gopls', 'zls', 'clangd', 'rust_analyzer' }) do
vim.lsp.config(server, { capabilities = capabilities })
vim.lsp.enable(server)
end
vim.lsp.config('lua_ls', {
capabilities = capabilities,
on_init = function(client)
local workspace = client.workspace_folders and client.workspace_folders[1]
if workspace and (vim.uv.fs_stat(workspace.name .. '/.luarc.json')
or vim.uv.fs_stat(workspace.name .. '/.luarc.jsonc')) then
return
end
client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua or {}, {
runtime = { version = 'LuaJIT' },
workspace = { checkThirdParty = false, library = { vim.env.VIMRUNTIME } },
})
end,
settings = { Lua = {} },
})
vim.lsp.enable('lua_ls')