From 929b1530529390935b0ea9ad888f6f78128ce222 Mon Sep 17 00:00:00 2001 From: Kyren223 Date: Sun, 4 Aug 2024 01:01:44 +0300 Subject: refactor(nvim): moved mason to it's own file out of lspconfig --- .config/nvim/lua/custom/plugins/nvim-lspconfig.lua | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .config/nvim/lua/custom/plugins/nvim-lspconfig.lua (limited to '.config/nvim/lua/custom/plugins/nvim-lspconfig.lua') diff --git a/.config/nvim/lua/custom/plugins/nvim-lspconfig.lua b/.config/nvim/lua/custom/plugins/nvim-lspconfig.lua new file mode 100644 index 0000000..b864c7a --- /dev/null +++ b/.config/nvim/lua/custom/plugins/nvim-lspconfig.lua @@ -0,0 +1,29 @@ +return { + -- NOTE: Make sure the order is as follows: + -- Mason loads -> Mason lspconfig loads -> Lspconfig loads + 'neovim/nvim-lspconfig', + event = { 'BufReadPre', 'BufNewFile' }, + dependencies = { + 'hrsh7th/cmp-nvim-lsp', + { 'antosha417/nvim-lsp-file-operations', conifg = true }, + { + 'williamboman/mason-lspconfig.nvim', + build = ':MasonUpdate', + config = function() + local language_servers = require('custom.config.language-servers') + local ensure_installed = vim.tbl_filter(function(key) + local server = language_servers[key] + if type(server) == 'table' then + return true + else + return server + end + end, vim.tbl_keys(language_servers)) + require('mason-lspconfig').setup({ ensure_installed = ensure_installed, auto_install = true }) + end, + }, + }, + config = function() + require('custom.config.lsp') + end, +} -- cgit v1.3.1