aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/home/.config/nvim/lua/plugins/treesitter.lua
diff options
context:
space:
mode:
Diffstat (limited to 'home/.config/nvim/lua/plugins/treesitter.lua')
-rw-r--r--home/.config/nvim/lua/plugins/treesitter.lua236
1 files changed, 84 insertions, 152 deletions
diff --git a/home/.config/nvim/lua/plugins/treesitter.lua b/home/.config/nvim/lua/plugins/treesitter.lua
index 99c9688..8355a07 100644
--- a/home/.config/nvim/lua/plugins/treesitter.lua
+++ b/home/.config/nvim/lua/plugins/treesitter.lua
@@ -1,153 +1,85 @@
-return {
- {
- "aaronik/treewalker.nvim",
- keys = {
- {
- "<a-k>",
- "<cmd>Treewalker Up<cr>",
- mode = { "n", "v" },
- silent = true,
- desc = "Moves up to the previous neighbor node",
- },
- {
- "<a-j>",
- "<cmd>Treewalker Down<cr>",
- mode = { "n", "v" },
- silent = true,
- desc = "Moves up to the next neighbor node",
- },
- {
- "<a-h>",
- "<cmd>Treewalker Left<cr>",
- mode = { "n", "v" },
- silent = true,
- desc = "Moves to the first ancestor node that's on a different line from the current node",
- },
- {
- "<a-l>",
- "<cmd>Treewalker Right<cr>",
- mode = { "n", "v" },
- silent = true,
- desc = "Moves to the next node down that's indented further than the current node",
- },
- {
- "<s-a-k>",
- "<cmd>Treewalker SwapUp<cr>",
- silent = true,
- desc = "Swaps the highest node on the line upwards in the document",
- },
- {
- "<s-a-j>",
- "<cmd>Treewalker SwapDown<cr>",
- silent = true,
- desc = "Swaps the biggest node on the line downward in the document",
- },
- {
- "<s-a-h>",
- "<cmd>Treewalker SwapLeft<cr>",
- silent = true,
- desc = "Swap the node under the cursor with its previous neighbor",
- },
- {
- "<s-a-l>",
- "<cmd>Treewalker SwapRight<cr>",
- silent = true,
- desc = "Swap the node under the cursor with its next neighbor",
- },
- },
- opts = {},
- },
- {
- "nvim-treesitter/nvim-treesitter",
- branch = "main",
- lazy = false,
- dependencies = {
- {
- "LiadOz/nvim-dap-repl-highlights",
- opts = {},
- },
- },
- build = ":TSUpdate",
- config = function()
- require("nvim-treesitter").install({
- "awk",
- "bash",
- "c",
- "cmake",
- "comment",
- "cpp",
- "css",
- "csv",
- "diff",
- "dockerfile",
- "dap_repl",
- "doxygen",
- "editorconfig",
- "fortran",
- "git_config",
- "git_rebase",
- "gitattributes",
- "gitcommit",
- "gitignore",
- "groovy",
- "gpg",
- "hlsplaylist",
- "html",
- "http",
- "ini",
- "javascript",
- "jq",
- "jsdoc",
- "json",
- "just",
- "llvm",
- "lua",
- "luadoc",
- "luap",
- "make",
- "markdown",
- "markdown_inline",
- "query",
- "passwd",
- "printf",
- "python",
- "regex",
- "readline",
- "requirements",
- "rust",
- "sql",
- "ssh_config",
- "strace",
- "sxhkdrc",
- "tablegen",
- "tmux",
- "todotxt",
- "toml",
- "typescript",
- "vim",
- "vimdoc",
- "xcompose",
- "xml",
- "xresources",
- "yaml",
- })
- end,
- },
- "RRethy/nvim-treesitter-endwise",
- { "nvim-treesitter/nvim-treesitter-context", opts = {} },
- {
- "JoosepAlviste/nvim-ts-context-commentstring",
- config = function()
- require("ts_context_commentstring").setup({
- enable_autocmd = false,
- })
- local get_option = vim.filetype.get_option
+require("treewalker").setup({})
- vim.filetype.get_option = function(filetype, option)
- return option == "commentstring"
- and require("ts_context_commentstring.internal").calculate_commentstring()
- or get_option(filetype, option)
- end
- end,
- },
-}
+vim.keymap.set({ "n", "v" }, "<a-k>", "<cmd>Treewalker Up<cr>", { silent = true, desc = "Moves up to the previous neighbor node" })
+vim.keymap.set({ "n", "v" }, "<a-j>", "<cmd>Treewalker Down<cr>", { silent = true, desc = "Moves up to the next neighbor node" })
+vim.keymap.set({ "n", "v" }, "<a-h>", "<cmd>Treewalker Left<cr>", { silent = true, desc = "Moves to the first ancestor node that's on a different line from the current node" })
+vim.keymap.set({ "n", "v" }, "<a-l>", "<cmd>Treewalker Right<cr>", { silent = true, desc = "Moves to the next node down that's indented further than the current node" })
+vim.keymap.set("n", "<s-a-k>", "<cmd>Treewalker SwapUp<cr>", { silent = true, desc = "Swaps the highest node on the line upwards in the document" })
+vim.keymap.set("n", "<s-a-j>", "<cmd>Treewalker SwapDown<cr>", { silent = true, desc = "Swaps the biggest node on the line downward in the document" })
+vim.keymap.set("n", "<s-a-h>", "<cmd>Treewalker SwapLeft<cr>", { silent = true, desc = "Swap the node under the cursor with its previous neighbor" })
+vim.keymap.set("n", "<s-a-l>", "<cmd>Treewalker SwapRight<cr>", { silent = true, desc = "Swap the node under the cursor with its next neighbor" })
+
+require("nvim-treesitter").install({
+ "awk",
+ "bash",
+ "c",
+ "cmake",
+ "comment",
+ "cpp",
+ "css",
+ "csv",
+ "diff",
+ "dockerfile",
+ "doxygen",
+ "editorconfig",
+ "fortran",
+ "git_config",
+ "git_rebase",
+ "gitattributes",
+ "gitcommit",
+ "gitignore",
+ "groovy",
+ "gpg",
+ "hlsplaylist",
+ "html",
+ "http",
+ "ini",
+ "javascript",
+ "jq",
+ "jsdoc",
+ "json",
+ "just",
+ "llvm",
+ "lua",
+ "luadoc",
+ "luap",
+ "make",
+ "markdown",
+ "markdown_inline",
+ "query",
+ "passwd",
+ "printf",
+ "python",
+ "regex",
+ "readline",
+ "requirements",
+ "rust",
+ "sql",
+ "ssh_config",
+ "strace",
+ "sxhkdrc",
+ "tablegen",
+ "tmux",
+ "todotxt",
+ "toml",
+ "typescript",
+ "vim",
+ "vimdoc",
+ "xcompose",
+ "xml",
+ "xresources",
+ "yaml",
+})
+
+require("nvim-dap-repl-highlights").setup({})
+require("treesitter-context").setup({})
+
+require("ts_context_commentstring").setup({
+ enable_autocmd = false,
+})
+local get_option = vim.filetype.get_option
+vim.filetype.get_option = function(filetype, option)
+ return option == "commentstring"
+ and require("ts_context_commentstring.internal").calculate_commentstring()
+ or get_option(filetype, option)
+end