Files
nvbad/lua/plugins/syntax.lua
2026-02-09 10:59:05 -06:00

54 lines
1.4 KiB
Lua

return {
{
"nvim-treesitter/nvim-treesitter",
lazy = false,
build = ":TSUpdate",
opts = {
indent = { enable = true },
highlight = { enable = true },
folds = { enable = true },
ensure_installed = {
"bash",
"diff",
"html",
"json",
"lua",
"luadoc",
"luap",
"markdown",
"markdown_inline",
"printf",
"regex",
"toml",
"vim",
"vimdoc",
"xml",
"yaml",
},
},
config = function(_, opts)
local ts = require "nvim-treesitter"
if type(opts.ensure_installed) == "table" and #opts.ensure_installed > 0 then
ts.install(opts.ensure_installed)
end
end,
},
{
"nvim-treesitter/nvim-treesitter-textobjects",
opts = {
move = {
enable = true,
set_jumps = true,
keys = {
goto_next_start = { ["]f"] = "@function.outer", ["]c"] = "@class.outer", ["]a"] = "@parameter.inner" },
goto_next_end = { ["]F"] = "@function.outer", ["]C"] = "@class.outer", ["]A"] = "@parameter.inner" },
goto_previous_start = { ["[f"] = "@function.outer", ["[c"] = "@class.outer", ["[a"] = "@parameter.inner" },
goto_previous_end = { ["[F"] = "@function.outer", ["[C"] = "@class.outer", ["[A"] = "@parameter.inner" },
},
},
},
},
}