52 lines
1.2 KiB
Lua
52 lines
1.2 KiB
Lua
|
-- 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" },
|
||
|
},
|
||
|
},
|
||
|
},
|
||
|
}
|