Files
nvim/lua/config/lspconfig.lua
T
2026-03-21 00:58:01 +01:00

55 lines
1.4 KiB
Lua

local mason = require("mason")
local mason_lspconfig = require("mason-lspconfig")
local lspconfig = require("lspconfig")
local cmp_cap = require("config.cmp").capabilities
local newlspconfig = vim.lsp.config
-- Fix!
local lspenable = vim.lsp.enable
lspenable("")
mason.setup()
mason_lspconfig.setup({
ensure_installed = {
"rust_analyzer", "jdtls", "yamlls", "ts_ls", "tailwindcss", "html",
"cssls", "bashls", "postgres_lsp", "pyright", "vimls"
},
handlers = {
function(server_name)
lspconfig[server_name].setup({capabilities = cmp_cap})
end,
}
})
-- locally installed lsps
vim.lsp.enable('zls')
vim.lsp.enable('denols')
vim.lsp.enable('lua_ls')
vim.lsp.enable('qmlls')
vim.lsp.enable('nil_ls')
vim.lsp.enable('arduino-langauge-server')
vim.lsp.enable('cmake')
vim.lsp.enable('clangd')
vim.lsp.enable('hyprls')
vim.lsp.enable('nginx_language_server')
vim.lsp.enable('docker_compose_language_service')
vim.lsp.enable('dockerls')
vim.diagnostic.config({
virtual_text = true,
float = {
focusable = false,
style = "minimal",
border = "rounded",
source = "always",
header = "",
prefix = ""
}
})
vim.api.nvim_set_keymap("n", "gd", "<cmd>lua vim.lsp.buf.definition()<CR>",
{noremap = true, silent = true})
vim.api.nvim_set_keymap("n", "gD", "<cmd>lua vim.lsp.buf.declaration()<CR>",
{noremap = true, silent = true})