neovim/lua/plugins/lsp.lua

54 lines
1.3 KiB
Lua

return {
{
"williamboman/mason.nvim",
lazy = false,
config = function()
require("mason").setup()
end,
},
{
"williamboman/mason-lspconfig.nvim",
lazy = false,
opts = {
auto_install = true,
},
},
{
"neovim/nvim-lspconfig",
lazy = false,
config = function()
local capabilities = require('cmp_nvim_lsp').default_capabilities()
local lspconfig = require("lspconfig")
lspconfig.lua_ls.setup({
capabilities = capabilities
})
lspconfig.ruff.setup({
capabilities = capabilities
})
lspconfig.ruff_lsp.setup({
capabilities = capabilities
})
lspconfig.pyright.setup({
capabilities = capabilities
})
lspconfig.terraformls.setup({
capabilities = capabilities
})
lspconfig.markdown_oxide.setup({
capabilities = capabilities
})
lspconfig.jdtls.setup({
capabilities = capabilities
})
vim.keymap.set("n", "K", vim.lsp.buf.hover, {})
vim.keymap.set("n", "<leader>gd", vim.lsp.buf.definition, {})
vim.keymap.set("n", "<leader>gr", vim.lsp.buf.references, {})
vim.keymap.set("n", "<leader>ca", vim.lsp.buf.code_action, {})
end,
},
}