diff --git a/init.lua b/init.lua index 7758df93..57009557 100644 --- a/init.lua +++ b/init.lua @@ -457,7 +457,16 @@ require('lazy').setup({ 'neovim/nvim-lspconfig', dependencies = { -- Automatically install LSPs and related tools to stdpath for Neovim - { 'williamboman/mason.nvim', config = true }, -- NOTE: Must be loaded before dependants + { + 'williamboman/mason.nvim', + -- Mason must be loaded before its dependents so we'll define `opts` + -- here: this will make `lazy` automatically run + -- `require('mason').setup(opts)` when `nvim-lspconfig` loads. + opts = { + -- Add overrides for mason's default settings here if needed! e.g.: + -- log_level = vim.log.levels.DEBUG, + }, + }, 'williamboman/mason-lspconfig.nvim', 'WhoIsSethDaniel/mason-tool-installer.nvim', @@ -646,13 +655,16 @@ require('lazy').setup({ } -- Ensure the servers and tools above are installed - -- To check the current status of installed tools and/or manually install - -- other tools, you can run + -- + -- To check the current status of installed tools and/or manually install + -- other tools, you can run -- :Mason -- - -- You can press `g?` for help in this menu. - require('mason').setup() - + -- You can press `g?` for help in this menu. + -- + -- `mason` had to be setup earlier: to configure its options see the + -- `dependencies` table for `nvim-lspconfig` above. + -- -- You can add other tools here that you want Mason to install -- for you, so that they are available from within Neovim. local ensure_installed = vim.tbl_keys(servers or {})