diff options
| author | kylo252 <[email protected]> | 2022-08-09 10:41:17 +0200 | 
|---|---|---|
| committer | GitHub <[email protected]> | 2022-08-09 10:41:17 +0200 | 
| commit | eefde00ae80f91ecf88a93e869e346fdd04c7ba4 (patch) | |
| tree | 873b8fc0248938ab060a1482f88c2d6d742ce61b /lua/lvim/core | |
| parent | d53b3743f2a259dbf90446216194ade2bb224ab7 (diff) | |
refactor!: migrate to mason.nvim (#2880)
Diffstat (limited to 'lua/lvim/core')
| -rw-r--r-- | lua/lvim/core/builtins/init.lua | 1 | ||||
| -rw-r--r-- | lua/lvim/core/info.lua | 4 | ||||
| -rw-r--r-- | lua/lvim/core/mason.lua | 41 | ||||
| -rw-r--r-- | lua/lvim/core/which-key.lua | 2 | 
4 files changed, 45 insertions, 3 deletions
| diff --git a/lua/lvim/core/builtins/init.lua b/lua/lvim/core/builtins/init.lua index e219d45e..5cad2a00 100644 --- a/lua/lvim/core/builtins/init.lua +++ b/lua/lvim/core/builtins/init.lua @@ -16,6 +16,7 @@ local builtins = {    "lvim.core.notify",    "lvim.core.lualine",    "lvim.core.alpha", +  "lvim.core.mason",  }  function M.config(config) diff --git a/lua/lvim/core/info.lua b/lua/lvim/core/info.lua index ac7d690a..da9ddbe6 100644 --- a/lua/lvim/core/info.lua +++ b/lua/lvim/core/info.lua @@ -111,9 +111,9 @@ local function make_auto_lsp_info(ft)      return info_lines    end -  local available = lsp_utils.get_supported_servers_per_filetype(ft) +  local supported = lsp_utils.get_supported_servers(ft)    local skipped = vim.tbl_filter(function(name) -    return vim.tbl_contains(available, name) +    return vim.tbl_contains(supported, name)    end, skipped_servers)    if #skipped == 0 then diff --git a/lua/lvim/core/mason.lua b/lua/lvim/core/mason.lua new file mode 100644 index 00000000..39be4f42 --- /dev/null +++ b/lua/lvim/core/mason.lua @@ -0,0 +1,41 @@ +local M = {} + +function M.config() +  lvim.builtin.mason = { +    ui = { +      keymaps = { +        toggle_package_expand = "<CR>", +        install_package = "i", +        update_package = "u", +        check_package_version = "c", +        update_all_packages = "U", +        check_outdated_packages = "C", +        uninstall_package = "X", +        cancel_installation = "<C-c>", +        apply_language_filter = "<C-f>", +      }, +    }, +    log_level = vim.log.levels.INFO, +    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 = "https://github.com/%s/releases/download/%s/%s", +    }, +  } +end + +function M.setup() +  local status_ok, mason = pcall(require, "mason") +  if not status_ok then +    return +  end + +  mason.setup(lvim.builtin.mason) +end + +return M diff --git a/lua/lvim/core/which-key.lua b/lua/lvim/core/which-key.lua index 8f0f964f..6d0dc9fc 100644 --- a/lua/lvim/core/which-key.lua +++ b/lua/lvim/core/which-key.lua @@ -160,7 +160,7 @@ M.config = function()          w = { "<cmd>Telescope diagnostics<cr>", "Diagnostics" },          f = { require("lvim.lsp.utils").format, "Format" },          i = { "<cmd>LspInfo<cr>", "Info" }, -        I = { "<cmd>LspInstallInfo<cr>", "Installer Info" }, +        I = { "<cmd>Mason<cr>", "Mason Info" },          j = {            vim.diagnostic.goto_next,            "Next Diagnostic", | 
