summaryrefslogtreecommitdiff
path: root/lua/tjk/plugins/treesitter.lua
blob: 2dafce1fae885c5ad19014bd85db75d4548a4e6c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
return {
	"nvim-treesitter",
	"https://github.com/nvim-treesitter/nvim-treesitter",
	setup = {
		highlight = { enable = true, disable = { "yaml", "dockerfile" } },
		--indent = { enable = true }, -- FIXME
	},
	dependents = {
		{
			"nvim-ts-autotag",
			"https://github.com/windwp/nvim-ts-autotag",
			setup = {
				per_filetype = { ["html"] = { enable_close = true } },
			},
		},
		{
			"rainbow-delimiters.setup",
			"https://github.com/HiPhish/rainbow-delimiters.nvim"
		},
		--{
		--	"tree-sitter-jinja2",
		--	"https://github.com/geigerzaehler/tree-sitter-jinja2"
		--},
	},
	loadFn = function()
		vim.g._ts_force_sync_parsing = true -- #32660

		vim.api.nvim_create_autocmd("FileType", {
			callback = function()
				-- highlight
				local ok, err = pcall(vim.treesitter.start)
				if not ok then
					return
				end
				vim.bo.syntax = "" -- disable legacy syntax for this buffer
				-- folding
				--vim.wo[0][0].foldexpr = 'v:lua.vim.treesitter.foldexpr()'
				--vim.wo[0][0].foldmethod = 'expr'
				-- indentation
				vim.bo.indentexpr = "v:lua.require'nvim-treesitter'.indentexpr()"
			end,
		})
	end,
}