diff options
Diffstat (limited to 'dotfiles/vim.lua')
-rw-r--r-- | dotfiles/vim.lua | 63 |
1 files changed, 56 insertions, 7 deletions
diff --git a/dotfiles/vim.lua b/dotfiles/vim.lua index 2b97a53..0b11fb6 100644 --- a/dotfiles/vim.lua +++ b/dotfiles/vim.lua | |||
@@ -129,15 +129,17 @@ require('nvim-treesitter.configs').setup { | |||
129 | matchup = { | 129 | matchup = { |
130 | enable = true, | 130 | enable = true, |
131 | }, | 131 | }, |
132 | refactor = { | ||
133 | highlight_current_scope = { enable = true }, | ||
134 | highlight_definitions = { enable = true }, | ||
135 | }, | ||
132 | textobjects = { | 136 | textobjects = { |
133 | select = { | 137 | lsp_interop = { |
134 | enable = true, | 138 | enable = true, |
135 | keymaps = { | 139 | border = 'none', |
136 | -- You can use the capture groups defined in textobjects.scm | 140 | peek_definition_code = { |
137 | ["af"] = "@function.outer", | 141 | ["<leader>df"] = "@function.outer", |
138 | ["if"] = "@function.inner", | 142 | ["<leader>dF"] = "@class.outer", |
139 | ["ac"] = "@class.outer", | ||
140 | ["ic"] = "@class.inner", | ||
141 | }, | 143 | }, |
142 | }, | 144 | }, |
143 | 145 | ||
@@ -160,12 +162,59 @@ require('nvim-treesitter.configs').setup { | |||
160 | ["[]"] = "@class.outer", | 162 | ["[]"] = "@class.outer", |
161 | }, | 163 | }, |
162 | }, | 164 | }, |
165 | |||
166 | select = { | ||
167 | enable = true, | ||
168 | keymaps = { | ||
169 | -- You can use the capture groups defined in textobjects.scm | ||
170 | ["af"] = "@function.outer", | ||
171 | ["if"] = "@function.inner", | ||
172 | |||
173 | ["aF"] = "@call.outer", | ||
174 | ["iF"] = "@call.inner", | ||
175 | |||
176 | ["ac"] = "@class.outer", | ||
177 | ["ic"] = "@class.inner", | ||
178 | |||
179 | ["aC"] = "@comment.outer", | ||
180 | ["iC"] = "@comment.inner", | ||
181 | |||
182 | ["ab"] = "@block.outer", | ||
183 | ["ib"] = "@block.inner", | ||
184 | |||
185 | ["aa"] = "@parameter.outer", | ||
186 | ["ia"] = "@parameter.inner", | ||
187 | }, | ||
188 | }, | ||
189 | |||
190 | swap = { | ||
191 | enable = true, | ||
192 | swap_next = { | ||
193 | ["<leader>a"] = "@parameter.inner", | ||
194 | }, | ||
195 | swap_previous = { | ||
196 | ["<leader>A"] = "@parameter.inner", | ||
197 | }, | ||
198 | }, | ||
163 | }, | 199 | }, |
164 | } | 200 | } |
165 | 201 | ||
166 | vim.o.foldmethod = 'expr' | 202 | vim.o.foldmethod = 'expr' |
167 | vim.o.foldexpr = 'nvim_treesitter#foldexpr()' | 203 | vim.o.foldexpr = 'nvim_treesitter#foldexpr()' |
168 | 204 | ||
205 | |||
206 | vim.api.nvim_set_hl(0, "TSCurrentScope", { | ||
207 | bg = vim.g.current_gruvbox_colors.dark0_soft[1], | ||
208 | }) | ||
209 | |||
210 | vim.api.nvim_set_hl(0, "TSDefinition", { | ||
211 | bg = vim.g.current_gruvbox_colors.faded_blue[1], | ||
212 | }) | ||
213 | |||
214 | vim.api.nvim_set_hl(0, "TSDefinitionUsage", { | ||
215 | bg = vim.g.current_gruvbox_colors.faded_aqua[1], | ||
216 | }) | ||
217 | |||
169 | -- nvim-cmp | 218 | -- nvim-cmp |
170 | 219 | ||
171 | local cmp = require("cmp") | 220 | local cmp = require("cmp") |