Explore the source / nvim

Inside nvim.

Neovim modules, plugins, mappings, and shared theme. Browse the current public files here, or visit the nvim repository on GitHub.

nvim / main

lua/myconf/plugins/lsp/mason.lua

View on GitHub
return {
   "williamboman/mason.nvim",
   dependencies = {
      "williamboman/mason-lspconfig.nvim",
      "WhoIsSethDaniel/mason-tool-installer.nvim",
   },
   config = function()
      local mason = require("mason")
      local mason_lspconfig = require("mason-lspconfig")
      local mason_tool_installer = require("mason-tool-installer")

      mason.setup({
         ui = {
            icons = {
               package_installed = "",
               package_pending = "",
               package_uninstalled = "",
            },
         },
      })

      mason_lspconfig.setup({
         automatic_enable = false,
         ensure_installed = {
            "html",
            "cssls",
            "svelte",
            "lua_ls",
            "graphql",
            "emmet_ls",
            "prismals",
            "pyright",
            "gopls",
            "jdtls",
            "clangd",
            "texlab",
         },
      })

      mason_tool_installer.setup({
         ensure_installed = {
            "prettier", -- prettier formatter
            "stylua", -- lua formatter
            "isort", -- python formatter
            "black", -- python formatter
            "pylint",
            "eslint_d",
            "clang-format",
            "latexindent",
         },
      })
   end,
}