Files
nvim/lua/rua/plugins/lsp/mason.lua
2024-09-09 21:56:18 +08:00

69 lines
1.3 KiB
Lua

return {
"williamboman/mason.nvim",
dependencies = {
"williamboman/mason-lspconfig.nvim",
"WhoIsSethDaniel/mason-tool-installer.nvim",
},
config = function()
-- import mason
local mason = require("mason")
-- import mason-lspconfig
local mason_lspconfig = require("mason-lspconfig")
local mason_tool_installer = require("mason-tool-installer")
-- enable mason and configure icons
mason.setup({
ui = {
icons = {
package_installed = "",
package_pending = "",
package_uninstalled = "",
},
},
})
mason_lspconfig.setup({
-- list of servers for mason to install
ensure_installed = {
"gopls",
"lua_ls",
"rust_analyzer",
"html",
"volar",
"vtsls",
"tailwindcss",
"eslint",
"cssls",
"cssmodules_ls",
"jsonls",
"yamlls",
"docker_compose_language_service",
"dockerls",
"bashls",
"clangd",
"lemminx",
},
})
mason_tool_installer.setup({
ensure_installed = {
"prettier", -- prettier formatter
"stylua", -- lua formatter
"isort", -- python formatter
"black", -- python formatter
"pylint",
"eslint_d",
"stylua",
"shellharden",
"shfmt",
"goimports",
"goimports-reviser",
"golines",
"taplo",
},
})
end,
}