local misc = require("core.misc") local map = misc.map local branch = nil if vim.version().minor == 7 then branch = 'compat/0.7' end return { 'nvim-treesitter/nvim-treesitter-context', disable = vim.version().minor < 7, branch = branch, requires = 'nvim-treesitter/nvim-treesitter', function() local treesitter_context = require("treesitter-context") treesitter_context.setup { enable = true, line_numbers = true, separator = '─', } -- mapping to jump to the first closest line of context in buffer map("n", "[j", function() local lline = vim.api.nvim_win_get_cursor(0)[1]; local line -- go to the first closest line of context and center it treesitter_context.go_to_context() vim.api.nvim_input('zz') -- make sure we actually moved line = vim.api.nvim_win_get_cursor(0)[1]; if line == lline then return end misc.timeout_highlight() end) end }