return { { "williamboman/mason.nvim", keys = { { "m", ":Mason ", desc = "open mason" }, }, config = true, opts = { PATH = "append", }, }, { "williamboman/mason-lspconfig.nvim", dependencies = { "williamboman/mason.nvim" }, opts = { -- Replace the language servers listed here -- with the ones you want to install ensure_installed = { "lua_ls", "clangd", "hyprls" }, handlers = { function(server_name) vim.lsp.enable(server_name) end, ["lua_ls"] = function() vim.lsp.config("lua_ls", { settings = { Lua = { runtime = { -- Tell the language server which version of Lua you're using -- (most likely LuaJIT in the case of Neovim) version = "LuaJIT", }, -- Make the server aware of Neovim runtime files workspace = { checkThirdParty = false, library = { vim.env.VIMRUNTIME, -- Depending on the usage, you might want to add additional paths here. -- "${3rd}/luv/library" -- "${3rd}/busted/library", }, -- or pull in all of 'runtimepath'. NOTE: this is a lot slower -- library = vim.api.nvim_get_runtime_file("", true) completion = { callSnippet = "Replace", }, doc = { privateName = { "^_" }, }, hint = { enable = true, setType = false, paramType = true, paramName = "Disable", semicolon = "Disable", arrayIndex = "Disable", }, }, }, }, }) vim.lsp.enable("lua_ls") end, }, }, }, { "frostplexx/mason-bridge.nvim", dependencies = { "williamboman/mason.nvim" }, config = true, }, }