From e755987281bfc9662cccded3a8e4edfaac3b8cca Mon Sep 17 00:00:00 2001 From: Toby Vincent Date: Sun, 20 Nov 2022 15:28:39 -0600 Subject: refactor(nvim): merge mason extension setups --- nvim/.config/nvim/lua/tobyvin/plugins.lua | 49 +++------------------- .../nvim/lua/tobyvin/plugins/mason-lspconfig.lua | 27 ------------ .../nvim/lua/tobyvin/plugins/mason-null-ls.lua | 27 ------------ .../nvim/lua/tobyvin/plugins/mason-nvim-dap.lua | 19 --------- .../nvim/lua/tobyvin/plugins/mason-update-all.lua | 15 ------- nvim/.config/nvim/lua/tobyvin/plugins/mason.lua | 33 +++++++++++++-- 6 files changed, 36 insertions(+), 134 deletions(-) delete mode 100644 nvim/.config/nvim/lua/tobyvin/plugins/mason-lspconfig.lua delete mode 100644 nvim/.config/nvim/lua/tobyvin/plugins/mason-null-ls.lua delete mode 100644 nvim/.config/nvim/lua/tobyvin/plugins/mason-nvim-dap.lua delete mode 100644 nvim/.config/nvim/lua/tobyvin/plugins/mason-update-all.lua (limited to 'nvim') diff --git a/nvim/.config/nvim/lua/tobyvin/plugins.lua b/nvim/.config/nvim/lua/tobyvin/plugins.lua index 5a6b290..2ece5c0 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins.lua @@ -74,19 +74,17 @@ M.plugins = function(use) use({ "williamboman/mason.nvim", + requires = { + "RubixDev/mason-update-all", + "williamboman/mason-lspconfig.nvim", + "jayp0521/mason-null-ls.nvim", + "jayp0521/mason-nvim-dap.nvim", + }, config = function() require("tobyvin.plugins.mason").setup() end, }) - use({ - "RubixDev/mason-update-all", - requires = { "williamboman/mason.nvim" }, - config = function() - require("tobyvin.plugins.mason-update-all").setup() - end, - }) - use({ "jose-elias-alvarez/null-ls.nvim", requires = { @@ -97,18 +95,6 @@ M.plugins = function(use) end, }) - use({ - "jayp0521/mason-null-ls.nvim", - after = { "mason.nvim", "null-ls.nvim" }, - requires = { - "williamboman/mason.nvim", - "jose-elias-alvarez/null-ls.nvim", - }, - config = function() - require("tobyvin.plugins.mason-null-ls").setup() - end, - }) - use({ "saecki/crates.nvim", event = { "BufRead Cargo.toml" }, @@ -172,17 +158,6 @@ M.plugins = function(use) end, }) - use({ - "williamboman/mason-lspconfig.nvim", - after = "mason.nvim", - requires = { - "williamboman/mason.nvim", - }, - config = function() - require("tobyvin.plugins.mason-lspconfig").setup() - end, - }) - use({ "folke/neodev.nvim", config = function() @@ -391,18 +366,6 @@ M.plugins = function(use) end, }) - use({ - "jayp0521/mason-nvim-dap.nvim", - after = { "mason.nvim", "nvim-dap" }, - requires = { - "williamboman/mason.nvim", - "mfussenegger/nvim-dap", - }, - config = function() - require("tobyvin.plugins.mason-nvim-dap").setup() - end, - }) - use({ "theHamsta/nvim-dap-virtual-text", requires = { diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/mason-lspconfig.lua b/nvim/.config/nvim/lua/tobyvin/plugins/mason-lspconfig.lua deleted file mode 100644 index bcdf9ca..0000000 --- a/nvim/.config/nvim/lua/tobyvin/plugins/mason-lspconfig.lua +++ /dev/null @@ -1,27 +0,0 @@ -local M = {} - -M.install = function() - require("mason-lspconfig.api.command").LspInstall({}) -end - -M.setup = function() - local status_ok, mason_lspconfig = pcall(require, "mason-lspconfig") - if not status_ok then - vim.notify("Failed to load module 'mason-lspconfig'", vim.log.levels.ERROR) - return - end - - mason_lspconfig.setup() - - vim.api.nvim_create_autocmd("User", { - pattern = "LspAttach", - callback = function(args) - local client = vim.lsp.get_client_by_id(args.data.client_id) - if client.name ~= "null-ls" then - vim.keymap.set("n", "lI", M.install, { desc = "lsp install", buffer = args.buf }) - end - end, - }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/mason-null-ls.lua b/nvim/.config/nvim/lua/tobyvin/plugins/mason-null-ls.lua deleted file mode 100644 index 89dce5f..0000000 --- a/nvim/.config/nvim/lua/tobyvin/plugins/mason-null-ls.lua +++ /dev/null @@ -1,27 +0,0 @@ -local M = {} - -M.install = function() - require("mason-null-ls.api.command").NullLsInstall({}) -end - -M.setup = function() - local status_ok, mason_null_ls = pcall(require, "mason-null-ls") - if not status_ok then - vim.notify("Failed to load module 'mason-null-ls'", vim.log.levels.ERROR) - return - end - - mason_null_ls.setup() - - vim.api.nvim_create_autocmd("User", { - pattern = "LspAttach", - callback = function(args) - local client = vim.lsp.get_client_by_id(args.data.client_id) - if client.name == "null-ls" then - vim.keymap.set("n", "lN", M.install, { desc = "null-ls install", buffer = args.buf }) - end - end, - }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/mason-nvim-dap.lua b/nvim/.config/nvim/lua/tobyvin/plugins/mason-nvim-dap.lua deleted file mode 100644 index 0cca51f..0000000 --- a/nvim/.config/nvim/lua/tobyvin/plugins/mason-nvim-dap.lua +++ /dev/null @@ -1,19 +0,0 @@ -local M = {} - -M.install = function() - require("mason-nvim-dap.api.command").DapInstall({}) -end - -M.setup = function() - local status_ok, mason_nvim_dap = pcall(require, "mason-nvim-dap") - if not status_ok then - vim.notify("Failed to load module 'mason-nvim-dap'", vim.log.levels.ERROR) - return - end - - mason_nvim_dap.setup() - - vim.keymap.set("n", "dI", M.install, { desc = "dap install" }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/mason-update-all.lua b/nvim/.config/nvim/lua/tobyvin/plugins/mason-update-all.lua deleted file mode 100644 index bf59763..0000000 --- a/nvim/.config/nvim/lua/tobyvin/plugins/mason-update-all.lua +++ /dev/null @@ -1,15 +0,0 @@ -local M = {} - -M.setup = function() - local status_ok, mason_update_all = pcall(require, "mason-update-all") - if not status_ok then - vim.notify("Failed to load module 'mason-update-all'", vim.log.levels.ERROR) - return - end - - mason_update_all.setup() - - vim.keymap.set("n", "M", mason_update_all.update_all, { desc = "update all" }) -end - -return M diff --git a/nvim/.config/nvim/lua/tobyvin/plugins/mason.lua b/nvim/.config/nvim/lua/tobyvin/plugins/mason.lua index 9838aa9..d694ce4 100644 --- a/nvim/.config/nvim/lua/tobyvin/plugins/mason.lua +++ b/nvim/.config/nvim/lua/tobyvin/plugins/mason.lua @@ -1,7 +1,10 @@ +local utils = require("tobyvin.utils") local M = {} -M.install = function() - require("mason.api.command").Mason({}) +local nil_wrap = function(func) + return function(opts) + func(vim.F.if_nil(opts, {})) + end end M.setup = function() @@ -13,6 +16,7 @@ M.setup = function() mason.setup({ ui = { + border = "single", icons = { package_installed = "✓", package_pending = "➜", @@ -21,7 +25,30 @@ M.setup = function() }, }) - vim.keymap.set("n", "m", M.install, { desc = "mason" }) + local mason_update_all = require("mason-update-all") + local mason_lspconfig = require("mason-lspconfig.api.command") + local mason_null_ls = require("mason-null-ls.api.command") + local mason_nvim_dap = require("mason-nvim-dap.api.command") + + local api = require("mason.api.command") + api.UpdateAll = mason_update_all.update_all + api.LspInstall = nil_wrap(mason_lspconfig.LspInstall) + api.LspUninstall = nil_wrap(mason_lspconfig.LspUninstall) + api.NullLsInstall = nil_wrap(mason_null_ls.NullLsInstall) + api.NullLsUninstall = nil_wrap(mason_null_ls.NullLsUninstall) + api.DapInstall = nil_wrap(mason_nvim_dap.DapInstall) + api.DapUninstall = nil_wrap(mason_nvim_dap.DapUninstall) + + utils.keymap.group("n", "i", { desc = "mason installer" }) + vim.keymap.set("n", "ii", api.Mason, { desc = "mason" }) + vim.keymap.set("n", "iI", api.MasonLog, { desc = "log" }) + vim.keymap.set("n", "iu", api.UpdateAll, { desc = "update all" }) + vim.keymap.set("n", "il", api.LspInstall, { desc = "lsp install" }) + vim.keymap.set("n", "iL", api.LspUninstall, { desc = "lsp uninstall" }) + vim.keymap.set("n", "in", api.NullLsInstall, { desc = "null-ls install" }) + vim.keymap.set("n", "iN", api.NullLsUninstall, { desc = "null-ls uninstall" }) + vim.keymap.set("n", "id", api.DapInstall, { desc = "dap install" }) + vim.keymap.set("n", "iD", api.DapUninstall, { desc = "dap uninstall" }) end return M -- cgit v1.2.3-70-g09d2