-
-
Notifications
You must be signed in to change notification settings - Fork 4
/
mason.lua
85 lines (72 loc) · 2.86 KB
/
mason.lua
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
local M = {
'williamboman/mason.nvim',
desc = 'Easily install and manage LSP servers, DAP servers, linters, and formatters.',
config = function(config)
require('mason').setup(config.mason)
end,
}
M.defaultConfig = function(config)
local util = require('one.util')
local sym = config.symbolMap
return {
'mason',
{
ui = {
-- Whether to automatically check for new versions when opening the :Mason window.
check_outdated_packages_on_open = false,
-- The border to use for the UI window. Accepts same border values as |nvim_open_win()|.
border = 'single',
icons = {
-- The list icon to use for installed packages.
package_installed = sym.INSTALLED,
-- The list icon to use for packages that are installing, or queued for installation.
package_pending = sym.PENDING,
-- The list icon to use for packages that are not installed.
package_uninstalled = sym.UNINSTALLED,
},
keymaps = {
-- Keymap to expand a package
toggle_package_expand = '<Tab>',
-- Keymap to install the package under the current cursor position
install_package = '<CR>',
-- Keymap to reinstall/update the package under the current cursor position
update_package = 'u',
-- Keymap to check for new version for the package under the current cursor position
check_package_version = 'c',
-- Keymap to update all installed packages
update_all_packages = 'U',
-- Keymap to check which installed packages are outdated
check_outdated_packages = 'C',
-- Keymap to uninstall a package
uninstall_package = 'x',
-- Keymap to cancel a package installation
cancel_installation = '<C-c>',
-- Keymap to apply language filter
apply_language_filter = '<M-f>',
},
},
-- The directory in which to install packages.
install_root_dir = util.dataPath('mason'),
pip = {
-- These args will be added to `pip install` calls. Note that setting extra args might impact intended behavior
-- and is not recommended.
--
-- Example: { "--proxy", "https://proxyserver" }
install_args = {},
},
-- Controls to which degree logs are written to the log file. It's useful to set this to vim.log.levels.DEBUG when
-- Limit for the maximum amount of packages to be installed at the same time. Once this limit is reached, any further
-- packages that are requested to be installed will be put in a queue.
max_concurrent_installers = 4,
github = {
-- The template URL to use when downloading assets from GitHub.
-- The placeholders are the following (in order):
-- 1. The repository (e.g. "rust-lang/rust-analyzer")
-- 2. The release version (e.g. "v0.3.0")
-- 3. The asset name (e.g. "rust-analyzer-v0.3.0-x86_64-unknown-linux-gnu.tar.gz")
download_url_template = util.proxyGithub('https://github.com/%s/releases/download/%s/%s'),
},
},
}
end
return M