Skip to content

Commit 0ebd9bf

Browse files
charliie-devboomker
authored andcommitted
update config
1 parent ae006cf commit 0ebd9bf

5 files changed

Lines changed: 150 additions & 97 deletions

File tree

lazy-lock.json

Lines changed: 23 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,14 @@
11
{
22
"Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" },
33
"LuaSnip": { "branch": "master", "commit": "5a1e39223db9a0498024a77b8441169d260c8c25" },
4-
"advanced-git-search.nvim": { "branch": "main", "commit": "69a41a3351d89e8be597fe5682265d8c99b8b12c" },
4+
"advanced-git-search.nvim": { "branch": "main", "commit": "e6d0fa39c7b058b4f3019912c3e26f854c4e36af" },
55
"alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" },
66
"autoclose.nvim": { "branch": "main", "commit": "3f86702b54a861a17d7994b2e32a7c648cb12fb1" },
77
"blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" },
88
"blink.compat": { "branch": "main", "commit": "2ed6d9a28b07fa6f3bface818470605f8896408c" },
99
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
1010
"catppuccin": { "branch": "refactor/syntax-highlighting", "commit": "6056f37ecc13403fa42b4f550bd9b1c900a1c433" },
11-
"cmp-latex-symbols": { "branch": "main", "commit": "86b68e6d6c550442d4a3f826e1b8358c5300824c" },
12-
"cmp-tmux": { "branch": "main", "commit": "95b1b921802e6f60627b3e76afb9380fddd87f9a" },
13-
"codecompanion.nvim": { "branch": "main", "commit": "5efcc8f401061caf022bc54392b1ad968717220e" },
14-
"codeium.nvim": { "branch": "main", "commit": "ebed4f7cc8a18184d8332d421ca10bed5f7d59a1" },
15-
"colorful-menu.nvim": { "branch": "master", "commit": "932d589a55816063051ad9e599516a6e70a1c63f" },
16-
"copilot-cmp": { "branch": "master", "commit": "15fc12af3d0109fa76b60b5cffa1373697e261d1" },
17-
"copilot.lua": { "branch": "master", "commit": "5f726c8e6bbcd7461ee0b870d4e6c8a973b55b64" },
18-
"crates.nvim": { "branch": "main", "commit": "5d8b1bef686db0fabe5f1bb593744b617e8f1405" },
19-
"csv.vim": { "branch": "master", "commit": "b8eb7f67babce96168e7f6b93b2ba8328b72a390" },
11+
"colorful-menu.nvim": { "branch": "master", "commit": "b51a659459df8d078201aefc995db8175ed55e84" },
2012
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
2113
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
2214
"dropbar.nvim": { "branch": "master", "commit": "ce202248134e3949aac375fd66c28e5207785b10" },
@@ -25,26 +17,25 @@
2517
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" },
2618
"flatten.nvim": { "branch": "main", "commit": "72527798e75b5e34757491947c2cb853ce21dc0e" },
2719
"friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
28-
"fzf": { "branch": "master", "commit": "3db63f5e52ebf88a483558cbdfa4143fb84e41d0" },
29-
"fzf-lua": { "branch": "main", "commit": "3b4a5d13adeb33f387d744b6ed777bb5401cba94" },
30-
"gitsigns.nvim": { "branch": "main", "commit": "cdafc320f03f2572c40ab93a4eecb733d4016d07" },
20+
"fzf": { "branch": "master", "commit": "b473477c22559ee22cccf6c58df838cf578475c2" },
21+
"fzf-lua": { "branch": "main", "commit": "cae96b04f6cad98a3ad24349731df5e56b384c3c" },
22+
"gitsigns.nvim": { "branch": "main", "commit": "5813e4878748805f1518cee7abb50fd7205a3a48" },
3123
"glance.nvim": { "branch": "master", "commit": "bf86d8b79dce808e65fdb6e9269d0b4ed6d2eefc" },
32-
"go.nvim": { "branch": "master", "commit": "81bb94c1d21648245eb14c69461f5c7f8c705752" },
24+
"go.nvim": { "branch": "master", "commit": "41a18f0c05534c375bafec7ed05cdb409c4abcc6" },
3325
"grug-far.nvim": { "branch": "main", "commit": "b58b2d65863f4ebad88b10a1ddd519e5380466e0" },
3426
"guihua.lua": { "branch": "master", "commit": "ef44ba40f12e56c1c9fa45967f2b4d142e4b97a0" },
3527
"hlargs.nvim": { "branch": "main", "commit": "0b29317c944fb1f76503ce4540d6dceffbb5ccd2" },
36-
"hop.nvim": { "branch": "master", "commit": "08ddca799089ab96a6d1763db0b8adc5320bf050" },
3728
"inc-rename.nvim": { "branch": "main", "commit": "2597bccb57d1b570fbdbd4adf88b955f7ade715b" },
3829
"indent-blankline.nvim": { "branch": "master", "commit": "005b56001b2cb30bfa61b7986bc50657816ba4ba" },
3930
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
4031
"live-server.nvim": { "branch": "main", "commit": "e8a34bc37fc565c678addbb352a59aa6c1842c2b" },
41-
"lsp-format-modifications.nvim": { "branch": "main", "commit": "006d4cd88f4f09fdc4375fcb75dd5b7d981a723b" },
32+
"lsp-format-modifications.nvim": { "branch": "main", "commit": "fd2b0de0afa42bea1d310af8337a4a95ebd27260" },
4233
"lsp_signature.nvim": { "branch": "master", "commit": "460acb7f24be4150bae87462dd5ce37f8adf33c4" },
4334
"lspsaga.nvim": { "branch": "main", "commit": "8efe00d6aed9db6449969f889170f1a7e43101a1" },
44-
"lualine.nvim": { "branch": "master", "commit": "3946f0122255bc377d14a59b27b609fb3ab25768" },
35+
"lualine.nvim": { "branch": "master", "commit": "47f91c416daef12db467145e16bed5bbfe00add8" },
4536
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
4637
"marks.nvim": { "branch": "master", "commit": "f353e8c08c50f39e99a9ed474172df7eddd89b72" },
47-
"mason-lspconfig.nvim": { "branch": "main", "commit": "7d527c76c43f46294de9c19d39c5a86317809b4b" },
38+
"mason-lspconfig.nvim": { "branch": "main", "commit": "0b9bb925c000ae649ff7e7149c8cd00031f4b539" },
4839
"mason-null-ls.nvim": { "branch": "main", "commit": "8e7806acaa87fae64f0bfde25bb4b87c18bd19b4" },
4940
"mason-nvim-dap.nvim": { "branch": "main", "commit": "9a10e096703966335bd5c46c8c875d5b0690dade" },
5041
"mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" },
@@ -56,66 +47,59 @@
5647
"move.nvim": { "branch": "main", "commit": "599b14047b82e92874b9a408e4df228b965c3a1d" },
5748
"multiple-cursors.nvim": { "branch": "main", "commit": "1ac15d047a4b265cc2389957bcc56ee561b29e02" },
5849
"neo-tree.nvim": { "branch": "v3.x", "commit": "f3df514fff2bdd4318127c40470984137f87b62e" },
59-
"neoconf.nvim": { "branch": "main", "commit": "c417fdeb58aede4097826b3aab9aae7fac7ee758" },
50+
"neoconf.nvim": { "branch": "main", "commit": "f0ce96f6972ed961ab2537bd3822585b212f5e0b" },
6051
"neogen": { "branch": "main", "commit": "d7f9461727751fb07f82011051338a9aba07581d" },
6152
"neoscroll.nvim": { "branch": "master", "commit": "f957373912e88579e26fdaea4735450ff2ef5c9c" },
62-
"none-ls.nvim": { "branch": "main", "commit": "550197530c12b4838d685cf4e0d5eb4cca8d52c7" },
53+
"none-ls.nvim": { "branch": "main", "commit": "9a5d95cdf9f440683f248f6f0e97f8643804c91b" },
6354
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
6455
"nvim-bqf": { "branch": "main", "commit": "ba2b365969d7c2c6301d48e13aeee59568765529" },
6556
"nvim-bufdel": { "branch": "main", "commit": "523d58e94e7212fff3e05c247b962dc8f93bcfde" },
66-
"nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" },
6757
"nvim-dap": { "branch": "master", "commit": "5860c7c501eb428d3137ee22c522828d20cca0b3" },
6858
"nvim-dap-python": { "branch": "master", "commit": "64652d1ae1db80870d9aac7132d76e37acd86a26" },
6959
"nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
7060
"nvim-highlight-colors": { "branch": "main", "commit": "e0c4a58ec8c3ca7c92d3ee4eb3bc1dd0f7be317e" },
71-
"nvim-hlslens": { "branch": "main", "commit": "425405475300d64de07dec3af60b1f1d31d49230" },
72-
"nvim-lspconfig": { "branch": "master", "commit": "a2a277114dbb93e98f04b5087a9b832918b7da15" },
61+
"nvim-lspconfig": { "branch": "master", "commit": "7757d54716b26280b1b1785d89364a016a29c445" },
7362
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
7463
"nvim-notify": { "branch": "master", "commit": "8701bece920b38ea289b457f902e2ad184131a5d" },
7564
"nvim-scrollview": { "branch": "main", "commit": "316c37c96e6ab7d15e18f878366d0497179e8891" },
76-
"nvim-tree.lua": { "branch": "master", "commit": "1c733e8c1957dc67f47580fe9c458a13b5612d5b" },
77-
"nvim-treehopper": { "branch": "master", "commit": "c8e8667ad861585577e95c36a02c9b7d5ce7230b" },
78-
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
65+
"nvim-treesitter": { "branch": "main", "commit": "75797cdd8ac125c7ace065b17788b439dcf89a71" },
7966
"nvim-treesitter-context": { "branch": "master", "commit": "660861b1849256398f70450afdf93908d28dc945" },
80-
"nvim-treesitter-textobjects": { "branch": "master", "commit": "5ca4aaa6efdcc59be46b95a3e876300cfead05ef" },
67+
"nvim-treesitter-textobjects": { "branch": "main", "commit": "dfbf9596f8aa8b4bed5301647485594ff7252955" },
8168
"nvim-ts-autotag": { "branch": "main", "commit": "c4ca798ab95b316a768d51eaaaee48f64a4a46bc" },
8269
"nvim-ts-context-commentstring": { "branch": "main", "commit": "1b212c2eee76d787bbea6aa5e92a2b534e7b4f8f" },
8370
"nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" },
8471
"nvim-web-devicons": { "branch": "master", "commit": "8dcb311b0c92d460fac00eac706abd43d94d68af" },
8572
"paint.nvim": { "branch": "main", "commit": "ef6f717a8669619ebbd098fb72f85115d64c6c92" },
8673
"persisted.nvim": { "branch": "main", "commit": "5063ee8e3589a43eefadcca57496aea01b6170fa" },
8774
"plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" },
88-
"project.nvim": { "branch": "main", "commit": "4190cfa73b5bec4ea845da8c7322bbde6fc3bb69" },
75+
"project.nvim": { "branch": "main", "commit": "0220d9e711a3b397027d13cfecdde1cb9d581817" },
8976
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" },
9077
"rainbow-delimiters.nvim": { "branch": "master", "commit": "8aafe2cbd89cd4090f573a98cab6b20366576fde" },
91-
"render-markdown.nvim": { "branch": "main", "commit": "6e0e8902dac70fecbdd8ce557d142062a621ec38" },
92-
"rustaceanvim": { "branch": "master", "commit": "01b28c60abde5cb79c0129e66c465699e78b0e6d" },
78+
"render-markdown.nvim": { "branch": "main", "commit": "b2b135347e299ffbf7f4123fb7811899b0c9f4b8" },
9379
"scratch.nvim": { "branch": "main", "commit": "1e78854fd3140411b231d5b6f9b3559b1ba5de77" },
9480
"search.nvim": { "branch": "main", "commit": "7b8f2315d031be73e14bc2d82386dfac15952614" },
95-
"smart-splits.nvim": { "branch": "master", "commit": "ca996f2844a4c77d74912a2414af939dc76a73cc" },
81+
"smart-splits.nvim": { "branch": "master", "commit": "e892a5da963813119d053af5b2260e3cd9d9f037" },
9682
"smartyank.nvim": { "branch": "master", "commit": "c4e53e0d9316ca790a6f5d78aad73206a763873b" },
9783
"sniprun": { "branch": "master", "commit": "94ca2a7ff33f9dbe9bef093a2efb2aa12ad64aeb" },
9884
"sqlite.lua": { "branch": "master", "commit": "50092d60feb242602d7578398c6eb53b4a8ffe7b" },
9985
"substitute.nvim": { "branch": "main", "commit": "9db749a880e3dd3b0eb57f698aa8f1e1630e1f25" },
100-
"suda.vim": { "branch": "master", "commit": "9adda7d195222d4e2854efb2a88005a120296c47" },
86+
"suda.vim": { "branch": "master", "commit": "c492741b4679b3cdd4d9e34138209784e061d916" },
10187
"telescope-cmdline.nvim": { "branch": "main", "commit": "b1c330835563c9628ce7c095cf20772f22f93f07" },
10288
"telescope-frecency.nvim": { "branch": "master", "commit": "fc6418bf663a182b72427487246b870f2ddbbbe2" },
10389
"telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" },
10490
"telescope-live-grep-args.nvim": { "branch": "master", "commit": "b80ec2c70ec4f32571478b501218c8979fab5201" },
10591
"telescope-undo.nvim": { "branch": "main", "commit": "928d0c2dc9606e01e2cc547196f48d2eaecf58e5" },
10692
"telescope-zoxide": { "branch": "main", "commit": "54bfe630bad08dc9891ec78c7cf8db38dd725c97" },
107-
"telescope.nvim": { "branch": "master", "commit": "83a3a713d6b2d2a408491a1b959e55a7fa8678e8" },
108-
"tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "71f998696a4d63a1fa42a6c70d5931a2001e485b" },
93+
"telescope.nvim": { "branch": "master", "commit": "e69b434b968a33815e2f02a5c7bd7b8dd4c7d4b2" },
94+
"tiny-inline-diagnostic.nvim": { "branch": "main", "commit": "38b06435305c30966b7ceb0a43e460dc43acaada" },
10995
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
11096
"toggleterm.nvim": { "branch": "main", "commit": "9a88eae817ef395952e08650b3283726786fb5fb" },
111-
"tree-sitter-ghostty": { "branch": "main", "commit": "2a9ae7233b6707e84b3a79c8778427f58aa4b6d0" },
97+
"tree-sitter-ghostty": { "branch": "main", "commit": "c2f7af6d7250f63f01401a6d84b3e353e71ff3c3" },
11298
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
11399
"venv-selector.nvim": { "branch": "regexp", "commit": "d2326e7433fdeb10f7d0d1237c18b91b353f9f8b" },
114100
"vim-cool": { "branch": "master", "commit": "9ea940c0d537e55de0de4c0298c04b976960fb12" },
115-
"vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" },
101+
"vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
116102
"vim-matchup": { "branch": "master", "commit": "1c276e12b49a83c1bdca74351187b8adea5da4b9" },
117-
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
118103
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" },
119-
"wilder.nvim": { "branch": "master", "commit": "679f348dc90d80ff9ba0e7c470c40a4d038dcecf" },
120-
"yanky.nvim": { "branch": "main", "commit": "04775cc6e10ef038c397c407bc17f00a2f52b378" }
104+
"yanky.nvim": { "branch": "main", "commit": "04fc42b94305d94948c9c197f679336668af3292" }
121105
}

lua/keymap/editor.lua

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,11 @@ local map_cmd = bind.map_cmd
55
local map_callback = bind.map_callback
66
local et = bind.escape_termcode
77

8+
local ts_to_select = require("nvim-treesitter-textobjects.select")
9+
local ts_to_swap = require("nvim-treesitter-textobjects.swap")
10+
local ts_to_move = require("nvim-treesitter-textobjects.move")
11+
local ts_to_repeat_move = require("nvim-treesitter-textobjects.repeatable_move")
12+
813
local mappings = {
914
builtins = {
1015
-- Builtins: Save & Quit
@@ -133,6 +138,102 @@ local mappings = {
133138

134139
-- Plugin: suda.vim
135140
["n|<A-s>"] = map_cu("SudaWrite"):with_silent():with_noremap():with_desc("editn: Save file using sudo"),
141+
142+
-- Plugin: nvim-treesitter-textobjects
143+
-- Text objects: select
144+
["xo|af"] = map_callback(function()
145+
ts_to_select.select_textobject("@function.outer", "textobjects")
146+
end)
147+
:with_silent()
148+
:with_noremap()
149+
:with_desc("editxo: Select function.outer"),
150+
["xo|if"] = map_callback(function()
151+
ts_to_select.select_textobject("@function.inner", "textobjects")
152+
end)
153+
:with_silent()
154+
:with_noremap()
155+
:with_desc("editxo: Select function.inner"),
156+
["xo|ac"] = map_callback(function()
157+
ts_to_select.select_textobject("@class.outer", "textobjects")
158+
end)
159+
:with_silent()
160+
:with_noremap()
161+
:with_desc("editxo: Select class.outer"),
162+
["xo|ic"] = map_callback(function()
163+
ts_to_select.select_textobject("@class.inner", "textobjects")
164+
end)
165+
:with_silent()
166+
:with_noremap()
167+
:with_desc("editoxo: Select class.inner"),
168+
-- Text objects: swap
169+
["n|<leader>a"] = map_callback(function()
170+
ts_to_swap.swap_next("@parameter.inner")
171+
end)
172+
:with_silent()
173+
:with_noremap()
174+
:with_desc("editn: Swap parameter.inner"),
175+
["n|<leader>A"] = map_callback(function()
176+
ts_to_swap.swap_next("@parameter.outer")
177+
end)
178+
:with_silent()
179+
:with_noremap()
180+
:with_desc("editn: Swap parameter.outer"),
181+
-- Text objects: move
182+
["nxo|]["] = map_callback(function()
183+
ts_to_move.goto_next_start("@function.outer", "textobjects")
184+
end)
185+
:with_silent()
186+
:with_noremap()
187+
:with_desc("editnxo: Move to next function.outer start"),
188+
["nxo|]m"] = map_callback(function()
189+
ts_to_move.goto_next_start("@class.outer", "textobjects")
190+
end)
191+
:with_silent()
192+
:with_noremap()
193+
:with_desc("editnxo: Move to next class.outer start"),
194+
["nxo|]]"] = map_callback(function()
195+
ts_to_move.goto_next_end("@function.outer", "textobjects")
196+
end)
197+
:with_silent()
198+
:with_noremap()
199+
:with_desc("editnxo: Move to next function.outer end"),
200+
["nxo|]M"] = map_callback(function()
201+
ts_to_move.goto_next_end("@class.outer", "textobjects")
202+
end)
203+
:with_silent()
204+
:with_noremap()
205+
:with_desc("editnxo: Move to next class.outer end"),
206+
["nxo|[["] = map_callback(function()
207+
ts_to_move.goto_previous_start("@function.outer", "textobjects")
208+
end)
209+
:with_silent()
210+
:with_noremap()
211+
:with_desc("editnxo: Move to previous function.outer start"),
212+
["nxo|[m"] = map_callback(function()
213+
ts_to_move.goto_previous_start("@class.outer", "textobjects")
214+
end)
215+
:with_silent()
216+
:with_noremap()
217+
:with_desc("editnxo: Move to previous class.outer start"),
218+
["nxo|[]"] = map_callback(function()
219+
ts_to_move.goto_previous_end("@function.outer", "textobjects")
220+
end)
221+
:with_silent()
222+
:with_noremap()
223+
:with_desc("editnxo: Move to previous function.outer end"),
224+
["nxo|[M"] = map_callback(function()
225+
ts_to_move.goto_previous_end("@class.outer", "textobjects")
226+
end)
227+
:with_silent()
228+
:with_noremap()
229+
:with_desc("editnxo: Move to previous class.outer end"),
230+
-- movements repeat
231+
["nxo|;"] = map_callback(function()
232+
ts_to_repeat_move.repeat_last_move_next()
233+
end)
234+
:with_silent()
235+
:with_noremap()
236+
:with_desc("editnxo: Repeat last move"),
136237
},
137238
}
138239

Lines changed: 4 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,7 @@
11
return vim.schedule_wrap(function()
2-
local use_ssh = require("user.settings").use_ssh
2+
vim.api.nvim_set_option_value("indentexpr", "v:lua.require'nvim-treesitter'.indentexpr()", {})
33

4-
vim.api.nvim_set_option_value("foldmethod", "expr", {})
5-
vim.api.nvim_set_option_value("foldexpr", "nvim_treesitter#foldexpr()", {})
4+
require("modules.utils").load_plugin("nvim-treesitter")
65

7-
require("modules.utils").load_plugin("nvim-treesitter", {
8-
ensure_installed = require("user.settings").treesitter_deps,
9-
highlight = {
10-
enable = true,
11-
disable = function(ft)
12-
return vim.tbl_contains({ "gitcommit" }, ft)
13-
end,
14-
additional_vim_regex_highlighting = false,
15-
},
16-
textobjects = {
17-
select = {
18-
enable = true,
19-
lookahead = true,
20-
keymaps = {
21-
["af"] = "@function.outer",
22-
["if"] = "@function.inner",
23-
["ac"] = "@class.outer",
24-
["ic"] = "@class.inner",
25-
},
26-
},
27-
move = {
28-
enable = true,
29-
set_jumps = true,
30-
goto_next_start = {
31-
["]["] = "@function.outer",
32-
["]m"] = "@class.outer",
33-
},
34-
goto_next_end = {
35-
["]]"] = "@function.outer",
36-
["]M"] = "@class.outer",
37-
},
38-
goto_previous_start = {
39-
["[["] = "@function.outer",
40-
["[m"] = "@class.outer",
41-
},
42-
goto_previous_end = {
43-
["[]"] = "@function.outer",
44-
["[M"] = "@class.outer",
45-
},
46-
},
47-
},
48-
indent = { enable = true },
49-
matchup = { enable = true },
50-
}, false, require("nvim-treesitter.configs").setup)
51-
require("nvim-treesitter.install").prefer_git = true
52-
if use_ssh then
53-
local parsers = require("nvim-treesitter.parsers").get_parser_configs()
54-
for _, parser in pairs(parsers) do
55-
parser.install_info.url = parser.install_info.url:gsub("https://github.com/", "git@github.com:")
56-
end
57-
end
58-
end)
6+
require("nvim-treesitter").install(require("core.settings").treesitter_deps)
7+
end)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
return function()
2+
require("modules.utils").load_plugin("nvim-treesitter-textobjects", {
3+
select = {
4+
lookahead = true,
5+
selection_modes = {
6+
["@parameter.outer"] = "v", -- charwise
7+
["@function.outer"] = "V", -- linewise
8+
["@class.outer"] = "<c-v>", -- blockwise
9+
},
10+
},
11+
move = {
12+
set_jumps = true,
13+
},
14+
})
15+
end

lua/modules/plugins/editor.lua

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -93,17 +93,21 @@ editor["MagicDuck/grug-far.nvim"] = {
9393
--  :treesitter related plugins --
9494
----------------------------------------------------------------------
9595
editor["nvim-treesitter/nvim-treesitter"] = {
96-
lazy = true,
96+
lazy = false, -- nvim-ts cannot lazy load now
97+
branch = "main",
9798
build = function()
9899
if #vim.api.nvim_list_uis() > 0 then
99100
vim.api.nvim_command([[TSUpdate]])
100101
end
101102
end,
102-
event = "BufReadPre",
103103
config = require("editor.treesitter"),
104104
dependencies = {
105105
{ "mfussenegger/nvim-treehopper" },
106-
{ "nvim-treesitter/nvim-treesitter-textobjects" },
106+
{
107+
"nvim-treesitter/nvim-treesitter-textobjects",
108+
branch = "main",
109+
config = require("editor.ts-textobjects"),
110+
},
107111
{
108112
"andymass/vim-matchup",
109113
init = require("editor.matchup"),

0 commit comments

Comments
 (0)