Files
nix-los/config/nvim/lua/eliaskohout-old/after/plugin/lspconfig.lua

47 lines
1.1 KiB
Lua
Executable File

-- nvim-lspconfig
local lspconfig = require("lspconfig")
-- set capabilities
local lsp_capabilities = require('cmp_nvim_lsp').default_capabilities()
-- lua --
local on_init_lua_ls = function(client)
local path = client.workspace_folders[1].name
if vim.loop.fs_stat(path..'/.luarc.json') or vim.loop.fs_stat(path..'/.luarc.jsonc') then
return
end
client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, {
runtime = {
version = 'LuaJIT'
},
-- Make the server aware of Neovim runtime files
workspace = {
checkThirdParty = false,
library = {
vim.env.VIMRUNTIME
}
-- or pull in all of 'runtimepath'. NOTE: this is a lot slower
-- library = vim.api.nvim_get_runtime_file("", true)
}
})
end
lspconfig.lua_ls.setup({
on_init = on_init_lua_ls,
settings = { Lua = {} },
capabilities = lsp_capabilities,
})
-- python --
lspconfig.pyright.setup({
capabilities = lsp_capabilities,
})
lspconfig.ruff.setup({ init_options = { settings = {} } })
-- golang --
lspconfig.gopls.setup({
capabilities = lsp_capabilities,
})