--[[ Copyright 2023 Oscar Wallberg Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ]] -- https://github.com/nvim-treesitter/nvim-treesitter require("nvim-treesitter.configs").setup({ -- One of "all", "maintained" (parsers with maintainers), or a list of languages ensure_installed = { "bash", "c", "cpp", "cmake", "css", "dockerfile", "go", "html", "java", "javascript", "json", "lua", "make", "ninja", "python", "rust", "toml", "vim", "yaml", "yang", }, indent = { enable = true, }, -- Install languages synchronously (only applied to `ensure_installed`) sync_install = false, -- List of parsers to ignore installing ignore_install = {}, highlight = { -- `false` will disable the whole extension enable = true, -- list of language that will be disabled disable = {}, -- Setting this to true will run `:h syntax` and tree-sitter at the same time. -- Set this to `true` if you depend on 'syntax' being enabled (like for indentation). -- Using this option may slow down your editor, and you may see some duplicate highlights. -- Instead of true it can also be a list of languages additional_vim_regex_highlighting = false, }, }) -- vim.opt.foldmethod = "expr" -- vim.opt.foldexpr = "nvim_treesitter#foldexpr()"