feat: cleanup config a bit
This commit is contained in:
		| @@ -1,4 +1,15 @@ | |||||||
| vim.api.nvim_create_autocmd({ 'BufEnter, BufWinEnter' }, { command = 'set colorcolumn=120,80,88', pattern = { '*.py', '*.pyi' } }) | vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWinEnter' }, { command = 'set colorcolumn=79,80,88,120', pattern = { '*.py', '*.pyi' } }) | ||||||
| vim.api.nvim_create_autocmd({ 'BufEnter, BufWinEnter' }, { command = 'set colorcolumn=80,100', pattern = { '*.rs' } }) | vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWinEnter' }, { command = 'set colorcolumn=80,100', pattern = { '*.rs' } }) | ||||||
| vim.api.nvim_create_autocmd({ 'BufEnter, BufWinEnter' }, { command = 'set splitright', pattern = { '*' } }) | vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWinEnter' }, { command = 'set splitright', pattern = { '*' } }) | ||||||
| vim.api.nvim_create_autocmd({ 'BufEnter, BufWinEnter' }, { command = 'set splitbelow', pattern = { '*' } }) | vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWinEnter' }, { command = 'set splitbelow', pattern = { '*' } }) | ||||||
|  |  | ||||||
|  | -- [[ Highlight on yank ]] | ||||||
|  | -- See `:help vim.highlight.on_yank()` | ||||||
|  | local highlight_group = vim.api.nvim_create_augroup('YankHighlight', { clear = true }) | ||||||
|  | vim.api.nvim_create_autocmd('TextYankPost', { | ||||||
|  |   callback = function() | ||||||
|  |     vim.highlight.on_yank() | ||||||
|  |   end, | ||||||
|  |   group = highlight_group, | ||||||
|  |   pattern = '*', | ||||||
|  | }) | ||||||
|   | |||||||
| @@ -20,17 +20,6 @@ vim.keymap.set('n', 'N', 'Nzzzv', { noremap = true, silent = true }) | |||||||
| vim.keymap.set('v', '<M-k>', ":m '<-2<cr>gv=gv", { desc = 'Move selected lines up' }) | vim.keymap.set('v', '<M-k>', ":m '<-2<cr>gv=gv", { desc = 'Move selected lines up' }) | ||||||
| vim.keymap.set('v', '<M-j>', ":m '>+1<cr>gv=gv", { desc = 'Move selected lines down' }) | vim.keymap.set('v', '<M-j>', ":m '>+1<cr>gv=gv", { desc = 'Move selected lines down' }) | ||||||
|  |  | ||||||
| -- [[ Highlight on yank ]] |  | ||||||
| -- See `:help vim.highlight.on_yank()` |  | ||||||
| local highlight_group = vim.api.nvim_create_augroup('YankHighlight', { clear = true }) |  | ||||||
| vim.api.nvim_create_autocmd('TextYankPost', { |  | ||||||
|   callback = function() |  | ||||||
|     vim.highlight.on_yank() |  | ||||||
|   end, |  | ||||||
|   group = highlight_group, |  | ||||||
|   pattern = '*', |  | ||||||
| }) |  | ||||||
|  |  | ||||||
| -- Diagnostic keymaps | -- Diagnostic keymaps | ||||||
| vim.keymap.set('n', '[d', vim.diagnostic.goto_prev) | vim.keymap.set('n', '[d', vim.diagnostic.goto_prev) | ||||||
| vim.keymap.set('n', ']d', vim.diagnostic.goto_next) | vim.keymap.set('n', ']d', vim.diagnostic.goto_next) | ||||||
| @@ -39,3 +28,6 @@ vim.keymap.set('n', '<leader>q', vim.diagnostic.setloclist) | |||||||
|  |  | ||||||
| -- terminal | -- terminal | ||||||
| vim.keymap.set('t', '<C-x>', vim.api.nvim_replace_termcodes('<C-\\><C-N>', true, true, true), { desc = 'Escape terminal mode' }) | vim.keymap.set('t', '<C-x>', vim.api.nvim_replace_termcodes('<C-\\><C-N>', true, true, true), { desc = 'Escape terminal mode' }) | ||||||
|  |  | ||||||
|  | -- disabling highlight | ||||||
|  | vim.keymap.set('n', '<leader>hh', ':noh<CR>', { desc = 'No highlight search' }) | ||||||
|   | |||||||
| @@ -2,8 +2,8 @@ | |||||||
| -- See `:help vim.o` | -- See `:help vim.o` | ||||||
|  |  | ||||||
| -- disable netrw | -- disable netrw | ||||||
| -- vim.g.loaded_netrw = 1 | vim.g.loaded_netrw = 1 | ||||||
| -- vim.g.loaded_netrwPlugin = 1 | vim.g.loaded_netrwPlugin = 1 | ||||||
|  |  | ||||||
| -- Set highlight on search | -- Set highlight on search | ||||||
| vim.o.hlsearch = true | vim.o.hlsearch = true | ||||||
| @@ -14,9 +14,6 @@ vim.wo.number = true | |||||||
| -- Make line numbers relative | -- Make line numbers relative | ||||||
| vim.wo.relativenumber = true | vim.wo.relativenumber = true | ||||||
|  |  | ||||||
| -- Enable mouse mode |  | ||||||
| vim.o.mouse = 'a' |  | ||||||
|  |  | ||||||
| -- Enable break indent | -- Enable break indent | ||||||
| vim.o.breakindent = true | vim.o.breakindent = true | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| function leave_snippet() | function Leave_snippet() | ||||||
|   if |   if | ||||||
|     ((vim.v.event.old_mode == 's' and vim.v.event.new_mode == 'n') or vim.v.event.old_mode == 'i') |     ((vim.v.event.old_mode == 's' and vim.v.event.new_mode == 'n') or vim.v.event.old_mode == 'i') | ||||||
|     and require('luasnip').session.current_nodes[vim.api.nvim_get_current_buf()] |     and require('luasnip').session.current_nodes[vim.api.nvim_get_current_buf()] | ||||||
| @@ -9,7 +9,7 @@ function leave_snippet() | |||||||
| end | end | ||||||
| 
 | 
 | ||||||
| vim.api.nvim_command [[ | vim.api.nvim_command [[ | ||||||
|     autocmd ModeChanged * lua leave_snippet() |     autocmd ModeChanged * lua Leave_snippet() | ||||||
| ]] | ]] | ||||||
| 
 | 
 | ||||||
| vim.cmd 'highlight! link CmpPmenu         Pmenu' | vim.cmd 'highlight! link CmpPmenu         Pmenu' | ||||||
| @@ -44,19 +44,22 @@ return { | |||||||
|             luasnip.lsp_expand(args.body) |             luasnip.lsp_expand(args.body) | ||||||
|           end, |           end, | ||||||
|         }, |         }, | ||||||
|  |         completion = { | ||||||
|  |           completeopt = 'menu,menuone,noinsert', | ||||||
|  |         }, | ||||||
|         mapping = cmp.mapping.preset.insert { |         mapping = cmp.mapping.preset.insert { | ||||||
|  |           ['<C-n>'] = cmp.mapping.select_next_item(), | ||||||
|  |           ['<C-p>'] = cmp.mapping.select_prev_item(), | ||||||
|           ['<C-d>'] = cmp.mapping.scroll_docs(-4), |           ['<C-d>'] = cmp.mapping.scroll_docs(-4), | ||||||
|           ['<C-f>'] = cmp.mapping.scroll_docs(4), |           ['<C-f>'] = cmp.mapping.scroll_docs(4), | ||||||
|           ['<C-Space>'] = cmp.mapping.complete {}, |           ['<C-Space>'] = cmp.mapping.complete {}, | ||||||
|           ['<CR>'] = cmp.mapping.confirm { |           ['<CR>'] = cmp.mapping.confirm { select = true }, | ||||||
|             behavior = cmp.ConfirmBehavior.Replace, |           ['<C-e>'] = cmp.mapping.close(), | ||||||
|             select = true, |  | ||||||
|           }, |  | ||||||
|           ['<Tab>'] = cmp.mapping(function(fallback) |           ['<Tab>'] = cmp.mapping(function(fallback) | ||||||
|             if cmp.visible() then |             if cmp.visible() then | ||||||
|               cmp.select_next_item() |               cmp.select_next_item() | ||||||
|             elseif luasnip.expand_or_jumpable() then |             elseif luasnip.locally_jumpable() then | ||||||
|               luasnip.expand_or_jump() |               luasnip.jump(1) | ||||||
|             else |             else | ||||||
|               fallback() |               fallback() | ||||||
|             end |             end | ||||||
| @@ -64,7 +67,7 @@ return { | |||||||
|           ['<S-Tab>'] = cmp.mapping(function(fallback) |           ['<S-Tab>'] = cmp.mapping(function(fallback) | ||||||
|             if cmp.visible() then |             if cmp.visible() then | ||||||
|               cmp.select_prev_item() |               cmp.select_prev_item() | ||||||
|             elseif luasnip.jumpable(-1) then |             elseif luasnip.locally_jumpable(-1) then | ||||||
|               luasnip.jump(-1) |               luasnip.jump(-1) | ||||||
|             else |             else | ||||||
|               fallback() |               fallback() | ||||||
| @@ -4,5 +4,5 @@ return { | |||||||
|   -- Enable `lukas-reineke/indent-blankline.nvim` |   -- Enable `lukas-reineke/indent-blankline.nvim` | ||||||
|   -- See `:help indent_blankline.txt` |   -- See `:help indent_blankline.txt` | ||||||
|   main = 'ibl', |   main = 'ibl', | ||||||
|   opts = {}, |   opts = { scope = { show_start = false, show_end = false } }, | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,7 +0,0 @@ | |||||||
| return { |  | ||||||
|   'ggandor/leap.nvim', |  | ||||||
|   dependencies = { 'tpope/vim-repeat' }, |  | ||||||
|   config = function() |  | ||||||
|     require('leap').add_default_mappings() |  | ||||||
|   end, |  | ||||||
| } |  | ||||||
| @@ -52,7 +52,7 @@ return { | |||||||
|       'simrat39/rust-tools.nvim', |       'simrat39/rust-tools.nvim', | ||||||
|  |  | ||||||
|       -- Useful status updates for LSP |       -- Useful status updates for LSP | ||||||
|       { 'j-hui/fidget.nvim', opts = {}, tag='legacy' }, |       { 'j-hui/fidget.nvim', opts = {} }, | ||||||
|  |  | ||||||
|       -- Additional lua configuration, makes nvim stuff amazing! |       -- Additional lua configuration, makes nvim stuff amazing! | ||||||
|       'folke/neodev.nvim', |       'folke/neodev.nvim', | ||||||
| @@ -101,30 +101,24 @@ return { | |||||||
|  |  | ||||||
|       local rust_tools_opts = { |       local rust_tools_opts = { | ||||||
|         tools = { |         tools = { | ||||||
|           runnables = { |  | ||||||
|             use_telescope = true, |  | ||||||
|           }, |  | ||||||
|           inlay_hints = { |           inlay_hints = { | ||||||
|             auto = true, |             auto = false, | ||||||
|             show_parameter_hints = false, |  | ||||||
|             parameter_hints_prefix = '', |  | ||||||
|             other_hints_prefix = '', |  | ||||||
|           }, |           }, | ||||||
|         }, |         }, | ||||||
|         server = { |         server = { | ||||||
|           on_attach = on_attach, |           on_attach = on_attach, | ||||||
|           settings = { |           -- settings = { | ||||||
|             ['rust-analyzer'] = { |           --   ['rust-analyzer'] = { | ||||||
|               cargo = { |           --     cargo = { | ||||||
|                 -- always enable all features |           --       -- always enable all features | ||||||
|                 features = 'all', |           --       features = 'all', | ||||||
|               }, |           --     }, | ||||||
|               -- use clippy on save |           --     -- use clippy on save | ||||||
|               checkOnSave = { |           --     checkOnSave = { | ||||||
|                 command = 'clippy', |           --       command = 'clippy', | ||||||
|               }, |           --     }, | ||||||
|             }, |           --   }, | ||||||
|           }, |           -- }, | ||||||
|         }, |         }, | ||||||
|       } |       } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -1,15 +0,0 @@ | |||||||
| return { |  | ||||||
|   'SmiteshP/nvim-navbuddy', |  | ||||||
|   dependencies = { |  | ||||||
|     'neovim/nvim-lspconfig', |  | ||||||
|     'SmiteshP/nvim-navic', |  | ||||||
|     'MunifTanjim/nui.nvim', |  | ||||||
|   }, |  | ||||||
|   config = function() |  | ||||||
|     require('nvim-navbuddy').setup { lsp = { auto_attach = true } } |  | ||||||
|  |  | ||||||
|     -- Plugins |  | ||||||
|     vim.keymap.set('n', '<leader>nb', ':Navbuddy<CR>', { desc = '[N]av[b]uddy' }) |  | ||||||
|     vim.keymap.set('n', '<leader>nt', ':NvimTreeToggle<CR>', { desc = '[N]vim[T]ree' }) |  | ||||||
|   end, |  | ||||||
| } |  | ||||||
| @@ -1,6 +1,6 @@ | |||||||
| return { | return { | ||||||
|   -- inject lsp formatting, diagonstics etc |   -- inject lsp formatting, diagonstics etc | ||||||
|   'jose-elias-alvarez/null-ls.nvim', |   'nvimtools/none-ls.nvim', | ||||||
|   dependencies = { 'nvim-lua/plenary.nvim' }, |   dependencies = { 'nvim-lua/plenary.nvim' }, | ||||||
|   config = function() |   config = function() | ||||||
|     local null_ls = require 'null-ls' |     local null_ls = require 'null-ls' | ||||||
| @@ -3,14 +3,11 @@ return { | |||||||
|   { |   { | ||||||
|     -- Fuzzy Finder (files, lsp, etc) |     -- Fuzzy Finder (files, lsp, etc) | ||||||
|     'nvim-telescope/telescope.nvim', |     'nvim-telescope/telescope.nvim', | ||||||
|     version = '*', |     branch = '0.1.x', | ||||||
|     dependencies = { |     dependencies = { | ||||||
|       'nvim-lua/plenary.nvim', |       'nvim-lua/plenary.nvim', | ||||||
|  |  | ||||||
|       { |       { | ||||||
|         'nvim-telescope/telescope-fzf-native.nvim', |         'nvim-telescope/telescope-fzf-native.nvim', | ||||||
|         -- NOTE: If you are having trouble with this installation, |  | ||||||
|         --       refer to the README for telescope-fzf-native for more instructions. |  | ||||||
|         build = 'make', |         build = 'make', | ||||||
|         cond = function() |         cond = function() | ||||||
|           return vim.fn.executable 'make' == 1 |           return vim.fn.executable 'make' == 1 | ||||||
| @@ -18,43 +15,43 @@ return { | |||||||
|       }, |       }, | ||||||
|     }, |     }, | ||||||
|     config = function() |     config = function() | ||||||
|  |       local telescopeConfig = require 'telescope.config' | ||||||
|  |  | ||||||
|  |       -- Clone the default Telescope configuration | ||||||
|  |       local vimgrep_arguments = { unpack(telescopeConfig.values.vimgrep_arguments) } | ||||||
|  |  | ||||||
|  |       -- I want to search in hidden/dot files. | ||||||
|  |       table.insert(vimgrep_arguments, '--hidden') | ||||||
|  |       -- I don't want to respect .gitignore but do want to respect .ignore | ||||||
|  |       table.insert(vimgrep_arguments, '--no-ignore-vcs') | ||||||
|  |       -- I don't want to search in the `.git` directory. | ||||||
|  |       table.insert(vimgrep_arguments, '--glob') | ||||||
|  |       table.insert(vimgrep_arguments, '!**/.git/*') | ||||||
|  |  | ||||||
|  |       local rg_defaults = { 'rg', '-S', '--hidden', '--no-ignore-vcs', '--glob', '!**/.git/*' } | ||||||
|  |  | ||||||
|  |       local find_command = { unpack(rg_defaults) } | ||||||
|  |       table.insert(find_command, '--files') | ||||||
|  |  | ||||||
|  |       local grep_command = { unpack(rg_defaults) } | ||||||
|  |       table.insert(grep_command, '--color=never') | ||||||
|  |       table.insert(grep_command, '--no-heading') | ||||||
|  |       table.insert(grep_command, '--with-filename') | ||||||
|  |       table.insert(grep_command, '--line-number') | ||||||
|  |       table.insert(grep_command, '--column') | ||||||
|  |  | ||||||
|       -- [[ Configure Telescope ]] |       -- [[ Configure Telescope ]] | ||||||
|       -- See `:help telescope` and `:help telescope.setup()` |       -- See `:help telescope` and `:help telescope.setup()` | ||||||
|       require('telescope').setup { |       require('telescope').setup { | ||||||
|         defaults = { |         defaults = { | ||||||
|           mappings = { |           vimgrep_arguments = vimgrep_arguments, | ||||||
|             i = { |  | ||||||
|               ['<C-u>'] = false, |  | ||||||
|               ['<C-d>'] = false, |  | ||||||
|             }, |  | ||||||
|           }, |  | ||||||
|         }, |         }, | ||||||
|         pickers = { |         pickers = { | ||||||
|           find_files = { |           find_files = { | ||||||
|             find_command = { |             find_command = find_command, | ||||||
|               'rg', |  | ||||||
|               '-S', |  | ||||||
|               '--no-ignore-vcs', |  | ||||||
|               '--hidden', |  | ||||||
|               '--files', |  | ||||||
|               '-g', |  | ||||||
|               '!.git/', |  | ||||||
|             }, |  | ||||||
|           }, |           }, | ||||||
|           live_grep = { |           live_grep = { | ||||||
|             grep_command = { |             grep_command = grep_command, | ||||||
|               'rg', |  | ||||||
|               '--no-ignore-vcs', |  | ||||||
|               '--hidden', |  | ||||||
|               '--color=never', |  | ||||||
|               '--no-heading', |  | ||||||
|               '--with-filename', |  | ||||||
|               '--line-number', |  | ||||||
|               '--column', |  | ||||||
|               '--smart-case', |  | ||||||
|               '-g', |  | ||||||
|               '!.git/', |  | ||||||
|             }, |  | ||||||
|           }, |           }, | ||||||
|         }, |         }, | ||||||
|       } |       } | ||||||
| @@ -62,19 +59,9 @@ return { | |||||||
|       -- Enable telescope fzf native, if installed |       -- Enable telescope fzf native, if installed | ||||||
|       pcall(require('telescope').load_extension, 'fzf') |       pcall(require('telescope').load_extension, 'fzf') | ||||||
|  |  | ||||||
|       -- Enable harpoon |  | ||||||
|       require('telescope').load_extension 'harpoon' |  | ||||||
|  |  | ||||||
|       -- See `:help telescope.builtin` |       -- See `:help telescope.builtin` | ||||||
|       vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' }) |       vim.keymap.set('n', '<leader>?', require('telescope.builtin').oldfiles, { desc = '[?] Find recently opened files' }) | ||||||
|       vim.keymap.set('n', '<leader><space>', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' }) |       vim.keymap.set('n', '<leader><space>', require('telescope.builtin').buffers, { desc = '[ ] Find existing buffers' }) | ||||||
|       vim.keymap.set('n', '<leader>/', function() |  | ||||||
|         -- You can pass additional configuration to telescope to change theme, layout, etc. |  | ||||||
|         require('telescope.builtin').current_buffer_fuzzy_find(require('telescope.themes').get_dropdown { |  | ||||||
|           winblend = 10, |  | ||||||
|           previewer = false, |  | ||||||
|         }) |  | ||||||
|       end, { desc = '[/] Fuzzily search in current buffer' }) |  | ||||||
|  |  | ||||||
|       vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' }) |       vim.keymap.set('n', '<leader>sf', require('telescope.builtin').find_files, { desc = '[S]earch [F]iles' }) | ||||||
|       vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' }) |       vim.keymap.set('n', '<leader>sh', require('telescope.builtin').help_tags, { desc = '[S]earch [H]elp' }) | ||||||
| @@ -82,18 +69,6 @@ return { | |||||||
|       vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' }) |       vim.keymap.set('n', '<leader>sg', require('telescope.builtin').live_grep, { desc = '[S]earch by [G]rep' }) | ||||||
|       vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' }) |       vim.keymap.set('n', '<leader>sd', require('telescope.builtin').diagnostics, { desc = '[S]earch [D]iagnostics' }) | ||||||
|       vim.keymap.set('n', '<leader>ss', require('telescope.builtin').spell_suggest, { desc = '[S]pell [S]suggest' }) |       vim.keymap.set('n', '<leader>ss', require('telescope.builtin').spell_suggest, { desc = '[S]pell [S]suggest' }) | ||||||
|  |  | ||||||
|       vim.keymap.set('n', '<leader>sc', function() |  | ||||||
|         require('telescope.builtin').colorscheme { enable_preview = true } |  | ||||||
|       end, { desc = '[S]earch [C]olorscheme' }) |  | ||||||
|  |  | ||||||
|       -- extensions |  | ||||||
|       vim.api.nvim_set_keymap('n', '<leader>tc', ':TodoTelescope<CR>', { desc = '[T]odo [c]omments', noremap = true }) |  | ||||||
|       vim.api.nvim_set_keymap('n', '<leader>hm', ':Telescope harpoon marks<CR>', { desc = '[H]arpoon [m]arks', noremap = true }) |  | ||||||
|     end, |     end, | ||||||
|   }, |   }, | ||||||
|  |  | ||||||
|   -- Fuzzy Finder Algorithm which requires local dependencies to be built. |  | ||||||
|   -- Only load if `make` is available. Make sure you have the system |  | ||||||
|   -- requirements installed. |  | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,83 +1,77 @@ | |||||||
| return { | return { | ||||||
|   -- Highlight, edit, and navigate code |   -- Highlight, edit, and navigate code | ||||||
|   'nvim-treesitter/nvim-treesitter', |   'nvim-treesitter/nvim-treesitter', | ||||||
|   dependencies = { |   dependencies = { 'nvim-treesitter/nvim-treesitter-textobjects' }, | ||||||
|     'nvim-treesitter/nvim-treesitter-textobjects', |  | ||||||
|     'nvim-treesitter/nvim-treesitter-context', |  | ||||||
|     'nvim-treesitter/nvim-treesitter-refactor', |  | ||||||
|   }, |  | ||||||
|   config = function() |   config = function() | ||||||
|     pcall(require('nvim-treesitter.install').update { with_sync = true }) |     pcall(require('nvim-treesitter.install').update { with_sync = true }) | ||||||
|  |  | ||||||
|     -- [[ Configure Treesitter ]] |     -- [[ Configure Treesitter ]] | ||||||
|     -- See `:help nvim-treesitter` |     -- See `:help nvim-treesitter` | ||||||
|     require('nvim-treesitter.configs').setup { |     vim.defer_fn(function() | ||||||
|       -- Add languages to be installed here that you want installed for treesitter |       require('nvim-treesitter.configs').setup { | ||||||
|       ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'typescript', 'vimdoc', 'vim', 'markdown' }, |         -- Add languages to be installed here that you want installed for treesitter | ||||||
|  |         ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'typescript', 'vimdoc', 'vim', 'markdown' }, | ||||||
|  |  | ||||||
|       -- Autoinstall languages that are not installed. Defaults to false (but you can change for yourself!) |         -- Autoinstall languages that are not installed. Defaults to false (but you can change for yourself!) | ||||||
|       auto_install = true, |         auto_install = true, | ||||||
|  |  | ||||||
|       highlight = { enable = true }, |         highlight = { enable = true }, | ||||||
|       indent = { enable = true, disable = { 'python' } }, |         indent = { enable = true }, | ||||||
|       incremental_selection = { |         incremental_selection = { | ||||||
|         enable = true, |  | ||||||
|         keymaps = { |  | ||||||
|           init_selection = '<C-Space>', |  | ||||||
|           node_incremental = '<C-Space>', |  | ||||||
|           scope_incremental = '<C-M-Space>', |  | ||||||
|           node_decremental = '<C-Bslash>', |  | ||||||
|         }, |  | ||||||
|       }, |  | ||||||
|       -- refactor |  | ||||||
|       refactor = { |  | ||||||
|         highlight_definitions = { enable = true, clear_on_cursor_move = true }, |  | ||||||
|       }, |  | ||||||
|       -- textobjects |  | ||||||
|       textobjects = { |  | ||||||
|         select = { |  | ||||||
|           enable = true, |           enable = true, | ||||||
|           lookahead = true, -- Automatically jump forward to textobj, similar to targets.vim |  | ||||||
|           keymaps = { |           keymaps = { | ||||||
|             -- You can use the capture groups defined in textobjects.scm |             init_selection = '<c-space>', | ||||||
|             ['aa'] = '@parameter.outer', |             node_incremental = '<c-space>', | ||||||
|             ['ia'] = '@parameter.inner', |             scope_incremental = '<c-M-space>', | ||||||
|             ['af'] = '@function.outer', |             node_decremental = '<c-bslash>', | ||||||
|             ['if'] = '@function.inner', |  | ||||||
|             ['ac'] = '@class.outer', |  | ||||||
|             ['ic'] = '@class.inner', |  | ||||||
|           }, |           }, | ||||||
|         }, |         }, | ||||||
|         move = { |         -- textobjects | ||||||
|           enable = true, |         textobjects = { | ||||||
|           set_jumps = true, -- whether to set jumps in the jumplist |           select = { | ||||||
|           goto_next_start = { |             enable = true, | ||||||
|             [']m'] = '@function.outer', |             lookahead = true, -- Automatically jump forward to textobj, similar to targets.vim | ||||||
|             [']]'] = '@class.outer', |             keymaps = { | ||||||
|  |               -- You can use the capture groups defined in textobjects.scm | ||||||
|  |               ['aa'] = '@parameter.outer', | ||||||
|  |               ['ia'] = '@parameter.inner', | ||||||
|  |               ['af'] = '@function.outer', | ||||||
|  |               ['if'] = '@function.inner', | ||||||
|  |               ['ac'] = '@class.outer', | ||||||
|  |               ['ic'] = '@class.inner', | ||||||
|  |             }, | ||||||
|           }, |           }, | ||||||
|           goto_next_end = { |           move = { | ||||||
|             [']M'] = '@function.outer', |             enable = true, | ||||||
|             [']['] = '@class.outer', |             set_jumps = true, -- whether to set jumps in the jumplist | ||||||
|  |             goto_next_start = { | ||||||
|  |               [']m'] = '@function.outer', | ||||||
|  |               [']]'] = '@class.outer', | ||||||
|  |             }, | ||||||
|  |             goto_next_end = { | ||||||
|  |               [']M'] = '@function.outer', | ||||||
|  |               [']['] = '@class.outer', | ||||||
|  |             }, | ||||||
|  |             goto_previous_start = { | ||||||
|  |               ['[m'] = '@function.outer', | ||||||
|  |               ['[['] = '@class.outer', | ||||||
|  |             }, | ||||||
|  |             goto_previous_end = { | ||||||
|  |               ['[M'] = '@function.outer', | ||||||
|  |               ['[]'] = '@class.outer', | ||||||
|  |             }, | ||||||
|           }, |           }, | ||||||
|           goto_previous_start = { |           swap = { | ||||||
|             ['[m'] = '@function.outer', |             enable = true, | ||||||
|             ['[['] = '@class.outer', |             swap_next = { | ||||||
|           }, |               ['<leader>a'] = '@parameter.inner', | ||||||
|           goto_previous_end = { |             }, | ||||||
|             ['[M'] = '@function.outer', |             swap_previous = { | ||||||
|             ['[]'] = '@class.outer', |               ['<leader>A'] = '@parameter.inner', | ||||||
|  |             }, | ||||||
|           }, |           }, | ||||||
|         }, |         }, | ||||||
|         swap = { |       } | ||||||
|           enable = true, |     end, 0) | ||||||
|           swap_next = { |  | ||||||
|             ['<leader>a'] = '@parameter.inner', |  | ||||||
|           }, |  | ||||||
|           swap_previous = { |  | ||||||
|             ['<leader>A'] = '@parameter.inner', |  | ||||||
|           }, |  | ||||||
|         }, |  | ||||||
|       }, |  | ||||||
|     } |  | ||||||
|   end, |   end, | ||||||
| } | } | ||||||
|   | |||||||
| @@ -1,39 +0,0 @@ | |||||||
| return { |  | ||||||
|   -- a more adventurous wildmenu |  | ||||||
|   'gelguy/wilder.nvim', |  | ||||||
|   dependencies = { 'romgrk/fzy-lua-native' }, |  | ||||||
|   config = function() |  | ||||||
|     local wilder = require 'wilder' |  | ||||||
|     wilder.setup { modes = { ':', '/', '?' } } |  | ||||||
|     -- Disable Python remote plugin |  | ||||||
|     wilder.set_option('use_python_remote_plugin', 0) |  | ||||||
|  |  | ||||||
|     wilder.set_option('pipeline', { |  | ||||||
|       wilder.branch( |  | ||||||
|         wilder.cmdline_pipeline { |  | ||||||
|           fuzzy = 1, |  | ||||||
|           fuzzy_filter = wilder.lua_fzy_filter(), |  | ||||||
|         }, |  | ||||||
|         wilder.vim_search_pipeline() |  | ||||||
|       ), |  | ||||||
|     }) |  | ||||||
|  |  | ||||||
|     wilder.set_option( |  | ||||||
|       'renderer', |  | ||||||
|       wilder.popupmenu_renderer(wilder.popupmenu_border_theme { |  | ||||||
|         highlights = { |  | ||||||
|           border = 'Normal', |  | ||||||
|         }, |  | ||||||
|         -- stylua: ignore |  | ||||||
|         border = { |  | ||||||
|           '┌', '─', '┐', |  | ||||||
|           '│', '│', |  | ||||||
|           '└', '─', '┘', |  | ||||||
|         }, |  | ||||||
|         highlighter = wilder.lua_fzy_highlighter(), |  | ||||||
|         left = { ' ', wilder.popupmenu_devicons() }, |  | ||||||
|         right = { ' ', wilder.popupmenu_scrollbar() }, |  | ||||||
|       }) |  | ||||||
|     ) |  | ||||||
|   end, |  | ||||||
| } |  | ||||||
		Reference in New Issue
	
	Block a user