vim.filetype.add({extension = {wgsl = "wgsl"}}) require"nvim-treesitter.configs".setup { ensure_installed = { "wgsl", "bash", "cmake", "cpp", "dockerfile", "gitignore", "glsl", "go", "graphql", "html", "java", "javascript", "json5", "kotlin", "markdown", "python", "rasi", "regex", "c", "lua", "rust", "scss", "sql", "sxhkdrc", "toml", "tsx", "typescript", "yaml" }, sync_install = false, auto_install = true, indent = { enable = true, disable = { 'python' } }, highlight = { enable = true, }, incremental_selection = { enable = true, keymaps = { init_selection = "gnn", node_incremental = "grn", scope_incremental = "grc", node_decremental = "grm", }, }, rainbow = { enable = true, -- list of languages you want to disable the plugin for disable = {}, -- Which query to use for finding delimiters query = 'rainbow-parens', -- Highlight the entire buffer all at once strategy = require('ts-rainbow').strategy.global, }, } local treesitter_parser_config = require "nvim-treesitter.parsers".get_parser_configs() treesitter_parser_config.templ = { install_info = { url = "https://github.com/vrischmann/tree-sitter-templ.git", files = {"src/parser.c", "src/scanner.c"}, branch = "master", }, } vim.treesitter.language.register('templ', 'templ') vim.wo.foldmethod = "manual" vim.wo.foldexpr = "nvim_treesitter#foldexpr()" vim.o.foldlevelstart = 99 -- do not close folds when a buffer is opened