return { { "nvim-treesitter/nvim-treesitter", event = { "BufReadPre", "BufNewFile" }, build = ":TSUpdate", dependencies = { "nvim-treesitter/nvim-treesitter-textobjects", "windwp/nvim-ts-autotag", }, config = function() -- import nvim-treesitter plugin local treesitter = require("nvim-treesitter.configs") -- configure treesitter treesitter.setup({ -- enable syntax highlighting highlight = { enable = true, }, -- enable indentation indent = { enable = true }, -- enable autotagging (w/ nvim-ts-autotag plugin) autotag = { enable = true, }, -- ensure these language parsers are installed ensure_installed = { "json", "javascript", "typescript", "tsx", "yaml", "html", "css", "prisma", "markdown", "markdown_inline", "svelte", "graphql", "bash", "lua", "vim", "dockerfile", "gitignore", "query", }, incremental_selection = { enable = true, keymaps = { init_selection = "", node_incremental = "", scope_incremental = false, node_decremental = "", }, }, }) -- enable nvim-ts-context-commentstring plugin for commenting tsx and jsx require('ts_context_commentstring').setup {} end, }, }