mirror of
https://github.com/pnx/dotfiles
synced 2026-06-16 03:14:55 +02:00
nvim: treesitter: enable textobjects.
This commit is contained in:
parent
d3a4a487a1
commit
3708aa2f65
1 changed files with 52 additions and 1 deletions
|
|
@ -4,7 +4,7 @@ return {
|
|||
require("nvim-treesitter.install").update({ with_sync = true })
|
||||
end,
|
||||
dependencies = {
|
||||
-- "nvim-treesitter/nvim-treesitter-textobjects",
|
||||
"nvim-treesitter/nvim-treesitter-textobjects",
|
||||
{
|
||||
"windwp/nvim-ts-autotag",
|
||||
opts = {}
|
||||
|
|
@ -38,6 +38,57 @@ return {
|
|||
indent = {
|
||||
enable = true,
|
||||
},
|
||||
|
||||
textobjects = {
|
||||
select = {
|
||||
enable = true,
|
||||
lookahead = true,
|
||||
keymaps = {
|
||||
-- Functions/Methods
|
||||
["af"] = { query = "@function.outer", desc = "outer function"},
|
||||
["if"] = { query = "@function.inner", desc = "inner function"},
|
||||
-- Class
|
||||
["ac"] = { query = "@class.outer", desc = "around class" },
|
||||
["ic"] = { query = "@class.inner", desc = "inner class" },
|
||||
-- Parameters/arguments
|
||||
["av"] = { query = "@parameter.outer", desc = "around parameter" },
|
||||
["iv"] = { query = "@parameter.inner", desc = "inner parameter" },
|
||||
}
|
||||
},
|
||||
swap = {
|
||||
enable = true,
|
||||
swap_next = {
|
||||
["<leader>]"] = { query = "@parameter.inner", desc = "Swap next parameter with the one under cursor"},
|
||||
},
|
||||
swap_previous = {
|
||||
["<leader>["] = { query = "@parameter.inner", desc = "Swap previous parameter with the one under cursor"},
|
||||
},
|
||||
},
|
||||
move = {
|
||||
enable = true,
|
||||
set_jumps = true,
|
||||
goto_next_start = {
|
||||
["]f"] = { query = "@function.outer", desc = "Goto the beginning of the next function" },
|
||||
["]c"] = { query = "@class.outer", desc = "Goto the beginning of the next class" },
|
||||
["]v"] = { query = "@parameter.inner", desc = "Goto the beginning of the next parameter" },
|
||||
},
|
||||
goto_next_end = {
|
||||
["]F"] = { query = "@function.outer", desc = "Goto the end of the next function" },
|
||||
["]C"] = { query = "@class.outer", desc = "Goto the end of the next class" },
|
||||
["]V"] = { query = "@parameter.inner", desc = "Goto the end of the next parameter" },
|
||||
},
|
||||
goto_previous_start = {
|
||||
["[f"] = { query = "@function.outer", desc = "Goto the beginning of the previous function" },
|
||||
["[c"] = { query = "@class.outer", desc = "Goto the beginning of the previous class" },
|
||||
["[v"] = { query = "@parameter.inner", desc = "Goto the beginning of the previous parameter" },
|
||||
},
|
||||
goto_previous_end = {
|
||||
["[F"] = { query = "@function.outer", desc = "Goto the end of the previous function" },
|
||||
["[C"] = { query = "@class.outer", desc = "Goto the end of the previous class" },
|
||||
["[V"] = { query = "@parameter.inner", desc = "Goto the end of the previous parameter" },
|
||||
},
|
||||
}
|
||||
}
|
||||
},
|
||||
config = function(_, opts)
|
||||
local parser_config = require("nvim-treesitter.parsers").get_parser_configs()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue