summaryrefslogtreecommitdiff
path: root/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua
diff options
context:
space:
mode:
authorTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2025-01-24 20:35:27 +0900
committerTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2025-01-24 20:35:27 +0900
commitc80a54e42b52ce297f0f2f71af23c562832025c7 (patch)
treedcce8bb977a770f473325d48f6f70b21d9818a40 /ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua
init
Diffstat (limited to 'ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua')
-rw-r--r--ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua26
1 files changed, 26 insertions, 0 deletions
diff --git a/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua b/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua
new file mode 100644
index 0000000..e8979c8
--- /dev/null
+++ b/ar/.config/TheSiahxyz/lua/thesiahxyz/plugins/context.lua
@@ -0,0 +1,26 @@
+return {
+ "nvim-treesitter/nvim-treesitter-context",
+ cmd = { "TSContextEnable", "TSContextDisable", "TSContextToggle" },
+ config = function()
+ require("treesitter-context").setup({
+ enable = false, -- Enable this plugin (Can be enabled/disabled later via commands)
+ max_lines = 3, -- How many lines the window should span. Values <= 0 mean no limit.
+ min_window_height = 1, -- 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
+ })
+ end,
+ keys = {
+ vim.keymap.set("n", "[t", function()
+ require("treesitter-context").go_to_context(vim.v.count1)
+ end, { silent = true, desc = "Go to context" }),
+ vim.keymap.set({ "n", "v" }, "<leader>zc", "<cmd>TSContextToggle<cr>", { desc = "Toggle context" }),
+ },
+}