re-enable cmp and tree-sitter
This commit is contained in:
		
							parent
							
								
									d4ce269b03
								
							
						
					
					
						commit
						8e2a82e61d
					
				
							
								
								
									
										310
									
								
								init.lua
								
								
								
								
							
							
						
						
									
										310
									
								
								init.lua
								
								
								
								
							|  | @ -383,7 +383,7 @@ require('lazy').setup({ | |||
|       { 'j-hui/fidget.nvim', opts = {} }, | ||||
| 
 | ||||
|       -- Allows extra capabilities provided by nvim-cmp | ||||
|       'hrsh7th/cmp-nvim-lsp', | ||||
|       -- 'hrsh7th/cmp-nvim-lsp', | ||||
|     }, | ||||
|     config = function() | ||||
|       -- Brief aside: **What is LSP?** | ||||
|  | @ -642,123 +642,123 @@ require('lazy').setup({ | |||
|     }, | ||||
|   }, | ||||
| 
 | ||||
|   -- { -- Autocompletion | ||||
|   --   'hrsh7th/nvim-cmp', | ||||
|   --   event = 'InsertEnter', | ||||
|   --   dependencies = { | ||||
|   --     -- Snippet Engine & its associated nvim-cmp source | ||||
|   --     { | ||||
|   --       'L3MON4D3/LuaSnip', | ||||
|   --       build = (function() | ||||
|   --         -- Build Step is needed for regex support in snippets. | ||||
|   --         -- This step is not supported in many windows environments. | ||||
|   --         -- Remove the below condition to re-enable on windows. | ||||
|   --         if vim.fn.has 'win32' == 1 or vim.fn.executable 'make' == 0 then | ||||
|   --           return | ||||
|   --         end | ||||
|   --         return 'make install_jsregexp' | ||||
|   --       end)(), | ||||
|   --       dependencies = { | ||||
|   --         -- `friendly-snippets` contains a variety of premade snippets. | ||||
|   --         --    See the README about individual language/framework/plugin snippets: | ||||
|   --         --    https://github.com/rafamadriz/friendly-snippets | ||||
|   --         { | ||||
|   --           'rafamadriz/friendly-snippets', | ||||
|   --           config = function() | ||||
|   --             require('luasnip.loaders.from_vscode').lazy_load() | ||||
|   --           end, | ||||
|   --         }, | ||||
|   --       }, | ||||
|   --     }, | ||||
|   --     'saadparwaiz1/cmp_luasnip', | ||||
|   -- | ||||
|   --     -- Adds other completion capabilities. | ||||
|   --     --  nvim-cmp does not ship with all sources by default. They are split | ||||
|   --     --  into multiple repos for maintenance purposes. | ||||
|   --     'hrsh7th/cmp-nvim-lsp', | ||||
|   --     'hrsh7th/cmp-path', | ||||
|   --   }, | ||||
|   --   config = function() | ||||
|   --     -- See `:help cmp` | ||||
|   --     local cmp = require 'cmp' | ||||
|   --     local luasnip = require 'luasnip' | ||||
|   --     luasnip.config.setup {} | ||||
|   -- | ||||
|   --     cmp.setup { | ||||
|   --       snippet = { | ||||
|   --         expand = function(args) | ||||
|   --           luasnip.lsp_expand(args.body) | ||||
|   --         end, | ||||
|   --       }, | ||||
|   --       completion = { completeopt = 'menu,menuone,noinsert' }, | ||||
|   -- | ||||
|   --       -- For an understanding of why these mappings were | ||||
|   --       -- chosen, you will need to read `:help ins-completion` | ||||
|   --       -- | ||||
|   --       -- No, but seriously. Please read `:help ins-completion`, it is really good! | ||||
|   --       mapping = cmp.mapping.preset.insert { | ||||
|   --         -- Select the [n]ext item | ||||
|   --         ['<C-n>'] = cmp.mapping.select_next_item(), | ||||
|   --         -- Select the [p]revious item | ||||
|   --         ['<C-p>'] = cmp.mapping.select_prev_item(), | ||||
|   -- | ||||
|   --         -- Scroll the documentation window [b]ack / [f]orward | ||||
|   --         ['<C-b>'] = cmp.mapping.scroll_docs(-4), | ||||
|   --         ['<C-f>'] = cmp.mapping.scroll_docs(4), | ||||
|   -- | ||||
|   --         -- Accept ([y]es) the completion. | ||||
|   --         --  This will auto-import if your LSP supports it. | ||||
|   --         --  This will expand snippets if the LSP sent a snippet. | ||||
|   --         ['<C-y>'] = cmp.mapping.confirm { select = true }, | ||||
|   -- | ||||
|   --         -- If you prefer more traditional completion keymaps, | ||||
|   --         -- you can uncomment the following lines | ||||
|   --         --['<CR>'] = cmp.mapping.confirm { select = true }, | ||||
|   --         --['<Tab>'] = cmp.mapping.select_next_item(), | ||||
|   --         --['<S-Tab>'] = cmp.mapping.select_prev_item(), | ||||
|   -- | ||||
|   --         -- Manually trigger a completion from nvim-cmp. | ||||
|   --         --  Generally you don't need this, because nvim-cmp will display | ||||
|   --         --  completions whenever it has completion options available. | ||||
|   --         ['<C-Space>'] = cmp.mapping.complete {}, | ||||
|   -- | ||||
|   --         -- Think of <c-l> as moving to the right of your snippet expansion. | ||||
|   --         --  So if you have a snippet that's like: | ||||
|   --         --  function $name($args) | ||||
|   --         --    $body | ||||
|   --         --  end | ||||
|   --         -- | ||||
|   --         -- <c-l> will move you to the right of each of the expansion locations. | ||||
|   --         -- <c-h> is similar, except moving you backwards. | ||||
|   --         ['<C-l>'] = cmp.mapping(function() | ||||
|   --           if luasnip.expand_or_locally_jumpable() then | ||||
|   --             luasnip.expand_or_jump() | ||||
|   --           end | ||||
|   --         end, { 'i', 's' }), | ||||
|   --         ['<C-h>'] = cmp.mapping(function() | ||||
|   --           if luasnip.locally_jumpable(-1) then | ||||
|   --             luasnip.jump(-1) | ||||
|   --           end | ||||
|   --         end, { 'i', 's' }), | ||||
|   -- | ||||
|   --         -- For more advanced Luasnip keymaps (e.g. selecting choice nodes, expansion) see: | ||||
|   --         --    https://github.com/L3MON4D3/LuaSnip?tab=readme-ov-file#keymaps | ||||
|   --       }, | ||||
|   --       sources = { | ||||
|   --         { | ||||
|   --           name = 'lazydev', | ||||
|   --           -- set group index to 0 to skip loading LuaLS completions as lazydev recommends it | ||||
|   --           group_index = 0, | ||||
|   --         }, | ||||
|   --         { name = 'nvim_lsp' }, | ||||
|   --         { name = 'luasnip' }, | ||||
|   --         { name = 'path' }, | ||||
|   --         { name = 'copilot' }, | ||||
|   --         { name = 'buffer' }, | ||||
|   --       }, | ||||
|   --     } | ||||
|   --   end, | ||||
|   -- }, | ||||
|   { -- Autocompletion | ||||
|     'hrsh7th/nvim-cmp', | ||||
|     event = 'InsertEnter', | ||||
|     dependencies = { | ||||
|       -- Snippet Engine & its associated nvim-cmp source | ||||
|       { | ||||
|         'L3MON4D3/LuaSnip', | ||||
|         build = (function() | ||||
|           -- Build Step is needed for regex support in snippets. | ||||
|           -- This step is not supported in many windows environments. | ||||
|           -- Remove the below condition to re-enable on windows. | ||||
|           if vim.fn.has 'win32' == 1 or vim.fn.executable 'make' == 0 then | ||||
|             return | ||||
|           end | ||||
|           return 'make install_jsregexp' | ||||
|         end)(), | ||||
|         dependencies = { | ||||
|           -- `friendly-snippets` contains a variety of premade snippets. | ||||
|           --    See the README about individual language/framework/plugin snippets: | ||||
|           --    https://github.com/rafamadriz/friendly-snippets | ||||
|           { | ||||
|             'rafamadriz/friendly-snippets', | ||||
|             config = function() | ||||
|               require('luasnip.loaders.from_vscode').lazy_load() | ||||
|             end, | ||||
|           }, | ||||
|         }, | ||||
|       }, | ||||
|       'saadparwaiz1/cmp_luasnip', | ||||
| 
 | ||||
|       -- Adds other completion capabilities. | ||||
|       --  nvim-cmp does not ship with all sources by default. They are split | ||||
|       --  into multiple repos for maintenance purposes. | ||||
|       'hrsh7th/cmp-nvim-lsp', | ||||
|       'hrsh7th/cmp-path', | ||||
|     }, | ||||
|     config = function() | ||||
|       -- See `:help cmp` | ||||
|       local cmp = require 'cmp' | ||||
|       local luasnip = require 'luasnip' | ||||
|       luasnip.config.setup {} | ||||
| 
 | ||||
|       cmp.setup { | ||||
|         snippet = { | ||||
|           expand = function(args) | ||||
|             luasnip.lsp_expand(args.body) | ||||
|           end, | ||||
|         }, | ||||
|         completion = { completeopt = 'menu,menuone,noinsert' }, | ||||
| 
 | ||||
|         -- For an understanding of why these mappings were | ||||
|         -- chosen, you will need to read `:help ins-completion` | ||||
|         -- | ||||
|         -- No, but seriously. Please read `:help ins-completion`, it is really good! | ||||
|         mapping = cmp.mapping.preset.insert { | ||||
|           -- Select the [n]ext item | ||||
|           ['<C-n>'] = cmp.mapping.select_next_item(), | ||||
|           -- Select the [p]revious item | ||||
|           ['<C-p>'] = cmp.mapping.select_prev_item(), | ||||
| 
 | ||||
|           -- Scroll the documentation window [b]ack / [f]orward | ||||
|           ['<C-b>'] = cmp.mapping.scroll_docs(-4), | ||||
|           ['<C-f>'] = cmp.mapping.scroll_docs(4), | ||||
| 
 | ||||
|           -- Accept ([y]es) the completion. | ||||
|           --  This will auto-import if your LSP supports it. | ||||
|           --  This will expand snippets if the LSP sent a snippet. | ||||
|           ['<C-y>'] = cmp.mapping.confirm { select = true }, | ||||
| 
 | ||||
|           -- If you prefer more traditional completion keymaps, | ||||
|           -- you can uncomment the following lines | ||||
|           --['<CR>'] = cmp.mapping.confirm { select = true }, | ||||
|           --['<Tab>'] = cmp.mapping.select_next_item(), | ||||
|           --['<S-Tab>'] = cmp.mapping.select_prev_item(), | ||||
| 
 | ||||
|           -- Manually trigger a completion from nvim-cmp. | ||||
|           --  Generally you don't need this, because nvim-cmp will display | ||||
|           --  completions whenever it has completion options available. | ||||
|           ['<C-Space>'] = cmp.mapping.complete {}, | ||||
| 
 | ||||
|           -- Think of <c-l> as moving to the right of your snippet expansion. | ||||
|           --  So if you have a snippet that's like: | ||||
|           --  function $name($args) | ||||
|           --    $body | ||||
|           --  end | ||||
|           -- | ||||
|           -- <c-l> will move you to the right of each of the expansion locations. | ||||
|           -- <c-h> is similar, except moving you backwards. | ||||
|           ['<C-l>'] = cmp.mapping(function() | ||||
|             if luasnip.expand_or_locally_jumpable() then | ||||
|               luasnip.expand_or_jump() | ||||
|             end | ||||
|           end, { 'i', 's' }), | ||||
|           ['<C-h>'] = cmp.mapping(function() | ||||
|             if luasnip.locally_jumpable(-1) then | ||||
|               luasnip.jump(-1) | ||||
|             end | ||||
|           end, { 'i', 's' }), | ||||
| 
 | ||||
|           -- For more advanced Luasnip keymaps (e.g. selecting choice nodes, expansion) see: | ||||
|           --    https://github.com/L3MON4D3/LuaSnip?tab=readme-ov-file#keymaps | ||||
|         }, | ||||
|         sources = { | ||||
|           { | ||||
|             name = 'lazydev', | ||||
|             -- set group index to 0 to skip loading LuaLS completions as lazydev recommends it | ||||
|             group_index = 0, | ||||
|           }, | ||||
|           { name = 'nvim_lsp' }, | ||||
|           { name = 'luasnip' }, | ||||
|           { name = 'path' }, | ||||
|           { name = 'copilot' }, | ||||
|           { name = 'buffer' }, | ||||
|         }, | ||||
|       } | ||||
|     end, | ||||
|   }, | ||||
| 
 | ||||
|   { -- You can easily change to a different colorscheme. | ||||
|     -- Change the name of the colorscheme plugin below, and then | ||||
|  | @ -783,43 +783,43 @@ require('lazy').setup({ | |||
|   -- Highlight todo, notes, etc in comments | ||||
|   { 'folke/todo-comments.nvim', event = 'VimEnter', dependencies = { 'nvim-lua/plenary.nvim' }, opts = { signs = false } }, | ||||
| 
 | ||||
|   { -- Collection of various small independent plugins/modules | ||||
|     'echasnovski/mini.nvim', | ||||
|     config = function() | ||||
|       -- Better Around/Inside textobjects | ||||
|       -- | ||||
|       -- Examples: | ||||
|       --  - va)  - [V]isually select [A]round [)]paren | ||||
|       --  - yinq - [Y]ank [I]nside [N]ext [Q]uote | ||||
|       --  - ci'  - [C]hange [I]nside [']quote | ||||
|       require('mini.ai').setup { n_lines = 500 } | ||||
| 
 | ||||
|       -- Add/delete/replace surroundings (brackets, quotes, etc.) | ||||
|       -- | ||||
|       -- - saiw) - [S]urround [A]dd [I]nner [W]ord [)]Paren | ||||
|       -- - sd'   - [S]urround [D]elete [']quotes | ||||
|       -- - sr)'  - [S]urround [R]eplace [)] ['] | ||||
|       require('mini.surround').setup() | ||||
| 
 | ||||
|       -- Simple and easy statusline. | ||||
|       --  You could remove this setup call if you don't like it, | ||||
|       --  and try some other statusline plugin | ||||
|       local statusline = require 'mini.statusline' | ||||
|       -- set use_icons to true if you have a Nerd Font | ||||
|       statusline.setup { use_icons = vim.g.have_nerd_font } | ||||
| 
 | ||||
|       -- You can configure sections in the statusline by overriding their | ||||
|       -- default behavior. For example, here we set the section for | ||||
|       -- cursor location to LINE:COLUMN | ||||
|       ---@diagnostic disable-next-line: duplicate-set-field | ||||
|       statusline.section_location = function() | ||||
|         return '%2l:%-2v' | ||||
|       end | ||||
| 
 | ||||
|       -- ... and there is more! | ||||
|       --  Check out: https://github.com/echasnovski/mini.nvim | ||||
|     end, | ||||
|   }, | ||||
|   -- { -- Collection of various small independent plugins/modules | ||||
|   --   'echasnovski/mini.nvim', | ||||
|   --   config = function() | ||||
|   --     -- Better Around/Inside textobjects | ||||
|   --     -- | ||||
|   --     -- Examples: | ||||
|   --     --  - va)  - [V]isually select [A]round [)]paren | ||||
|   --     --  - yinq - [Y]ank [I]nside [N]ext [Q]uote | ||||
|   --     --  - ci'  - [C]hange [I]nside [']quote | ||||
|   --     require('mini.ai').setup { n_lines = 500 } | ||||
|   -- | ||||
|   --     -- Add/delete/replace surroundings (brackets, quotes, etc.) | ||||
|   --     -- | ||||
|   --     -- - saiw) - [S]urround [A]dd [I]nner [W]ord [)]Paren | ||||
|   --     -- - sd'   - [S]urround [D]elete [']quotes | ||||
|   --     -- - sr)'  - [S]urround [R]eplace [)] ['] | ||||
|   --     require('mini.surround').setup() | ||||
|   -- | ||||
|   --     -- Simple and easy statusline. | ||||
|   --     --  You could remove this setup call if you don't like it, | ||||
|   --     --  and try some other statusline plugin | ||||
|   --     local statusline = require 'mini.statusline' | ||||
|   --     -- set use_icons to true if you have a Nerd Font | ||||
|   --     statusline.setup { use_icons = vim.g.have_nerd_font } | ||||
|   -- | ||||
|   --     -- You can configure sections in the statusline by overriding their | ||||
|   --     -- default behavior. For example, here we set the section for | ||||
|   --     -- cursor location to LINE:COLUMN | ||||
|   --     ---@diagnostic disable-next-line: duplicate-set-field | ||||
|   --     statusline.section_location = function() | ||||
|   --       return '%2l:%-2v' | ||||
|   --     end | ||||
|   -- | ||||
|   --     -- ... and there is more! | ||||
|   --     --  Check out: https://github.com/echasnovski/mini.nvim | ||||
|   --   end, | ||||
|   -- }, | ||||
|   { -- Highlight, edit, and navigate code | ||||
|     'nvim-treesitter/nvim-treesitter', | ||||
|     build = ':TSUpdate', | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue