aboutsummaryrefslogtreecommitdiffstats
path: root/after/plugin/mason.lua
blob: 05963067c943d50ebb14604930645151cd7deb30 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
local ok, mason = pcall(require, "mason")
if not ok then
	return
end

local mason_lspconfig = require("mason-lspconfig")

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

mason_lspconfig.setup({
	automatic_installation = true,
})

require('mason-tool-installer').setup {

  -- a list of all tools you want to ensure are installed upon
  -- start; they should be the names Mason uses for each tool
  ensure_installed = {
    "blade-formatter",
    "codespell",
    "dockerfile-language-server",
    "emmet-ls",
    "go-debug-adapter",
    "golangci-lint",
    "gopls",
    "html-lsp",
    "intelephense",
    "json-lsp",
    "lua-language-server",
    "php-debug-adapter",
    "rust-analyzer",
    "stylua",
    "typescript-language-server",
    "vue-language-server",
    -- "phpactor",
    "sql-formatter",
  },

  -- if set to true this will check each tool for updates. If updates
  -- are available the tool will be updated. This setting does not
  -- affect :MasonToolsUpdate or :MasonToolsInstall.
  -- Default: false
  auto_update = false,

  -- automatically install / update on startup. If set to false nothing
  -- will happen on startup. You can use :MasonToolsInstall or
  -- :MasonToolsUpdate to install tools and check for updates.
  -- Default: true
  run_on_start = true,

  -- set a delay (in ms) before the installation starts. This is only
  -- effective if run_on_start is set to true.
  -- e.g.: 5000 = 5 second delay, 10000 = 10 second delay, etc...
  -- Default: 0
  start_delay = 3000, -- 3 second delay
}