From 3a9e5aeec18e5c83591d9069f5b7a58444f96f93 Mon Sep 17 00:00:00 2001 From: talksik Date: Fri, 15 Mar 2024 09:37:07 -0700 Subject: [PATCH] adding in nvim-treesitter-context to show current function or class I am editing --- .config/nvim/after/plugin/treesitter.lua | 19 +++++++++++++++++++ .config/nvim/lua/talksik/packer.lua | 3 +++ 2 files changed, 22 insertions(+) diff --git a/.config/nvim/after/plugin/treesitter.lua b/.config/nvim/after/plugin/treesitter.lua index b891aff..2a8e96f 100644 --- a/.config/nvim/after/plugin/treesitter.lua +++ b/.config/nvim/after/plugin/treesitter.lua @@ -21,3 +21,22 @@ require'nvim-treesitter.configs'.setup { }, } + +require'treesitter-context'.setup{ + enable = true, -- Enable this plugin (Can be enabled/disabled later via commands) + max_lines = 0, -- How many lines the window should span. Values <= 0 mean no limit. + min_window_height = 0, -- Minimum editor window height to enable context. Values <= 0 mean no limit. + line_numbers = true, + multiline_threshold = 20, -- Maximum number of lines to show for a single context + trim_scope = 'outer', -- Which context lines to discard if `max_lines` is exceeded. Choices: 'inner', 'outer' + mode = 'cursor', -- Line used to calculate context. Choices: 'cursor', 'topline' + -- Separator between context and content. Should be a single character string, like '-'. + -- When separator is set, the context will only show up when there are at least 2 lines above cursorline. + separator = nil, + zindex = 20, -- The Z-index of the context window + on_attach = nil, -- (fun(buf: integer): boolean) return false to disable attaching +} + +vim.keymap.set("n", "[c", function() + require("treesitter-context").go_to_context(vim.v.count1) +end, { silent = true }) diff --git a/.config/nvim/lua/talksik/packer.lua b/.config/nvim/lua/talksik/packer.lua index f04b973..72c4520 100644 --- a/.config/nvim/lua/talksik/packer.lua +++ b/.config/nvim/lua/talksik/packer.lua @@ -113,6 +113,9 @@ return require('packer').startup(function(use) use("lukas-reineke/indent-blankline.nvim") use {"ellisonleao/glow.nvim", config = function() require("glow").setup() end} + + -- treesitter context + use("nvim-treesitter/nvim-treesitter-context") end)