-- enable mason and configure icons require("mason").setup({ ui = { icons = { package_installed = "✓", package_pending = "➜", package_uninstalled = "✗", }, }, }) require("mason-tool-installer").setup({ ensure_installed = { "prettier", -- prettier formatter -- "stylua", -- lua formatter "isort", -- python formatter "black", -- python formatter "pylint", -- python linter "eslint_d", -- js linter }, }) --################################################################################# --##### THESE ARE THE LANGUAGE SERVERS WE WANT --################################################################################# local lsps_for_install = { "eslint", "html", "cssls", "bashls", "grammarly" } --make this table 2d to add configs local mason_lspconfig = require("mason-lspconfig") mason_lspconfig.setup { ensure_installed = lsps_for_install } local lspconfig = require("lspconfig") local lsp_capabilities = require("cmp_nvim_lsp").default_capabilities() for _, lsp in pairs(lsps_for_install) do lspconfig[lsp].setup { capabilities = lsp_capabilities, } end lspconfig.lua_ls.setup { capabilities = lsp_capabilities, settings = { Lua = { diagnostics = { globals = { "vim" }, }, }, }, }