More new plugins for nvim, as well as changing some existing ones

This commit is contained in:
Sergio Laín 2023-09-20 12:14:01 +02:00
parent 48b56cf641
commit e258ad83f4
No known key found for this signature in database
GPG key ID: 14C9B8080681777B
5 changed files with 101 additions and 9 deletions

View file

@ -156,3 +156,87 @@ vim.keymap.set("n", "<C-u>", "<C-u>zz")
vim.keymap.set("n", "n", "nzzzv") vim.keymap.set("n", "n", "nzzzv")
vim.keymap.set("n", "N", "Nzzzv") vim.keymap.set("n", "N", "Nzzzv")
local function goto_prev_node()
local ts_utils = require("nvim-treesitter.ts_utils")
local node = ts_utils.get_node_at_cursor()
if not node then
return
end
local dest_node = ts_utils.get_previous_node(node, true, true)
if not dest_node then
local cur_node = node:parent()
while cur_node do
dest_node = ts_utils.get_previous_node(cur_node, false, false)
if dest_node then
break
end
cur_node = cur_node:parent()
end
end
if not dest_node then
return
end
ts_utils.goto_node(dest_node)
end
local function goto_next_node()
local ts_utils = require("nvim-treesitter.ts_utils")
local node = ts_utils.get_node_at_cursor()
if not node then
return
end
local dest_node = ts_utils.get_next_node(node, true, true)
if not dest_node then
local cur_node = node:parent()
while cur_node do
dest_node = ts_utils.get_next_node(cur_node, false, false)
if dest_node then
break
end
cur_node = cur_node:parent()
end
end
if not dest_node then
return
end
ts_utils.goto_node(dest_node)
end
local function goto_parent_node()
local ts_utils = require("nvim-treesitter.ts_utils")
local node = ts_utils.get_node_at_cursor()
if not node then
return
end
local dest_node = node:parent()
if not dest_node then
return
end
ts_utils.goto_node(dest_node)
end
local function goto_child_node()
local ts_utils = require("nvim-treesitter.ts_utils")
local node = ts_utils.get_node_at_cursor()
if not node then
return
end
local dest_node = ts_utils.get_named_children(node)[1]
if not dest_node then
return
end
ts_utils.goto_node(dest_node)
end
local keyopts = { noremap = true, silent = true }
vim.keymap.set({ "n", "v", "o", "i" }, "<A-o>", goto_parent_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-i>", goto_child_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-n>", goto_next_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-p>", goto_prev_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-h>", goto_parent_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-l>", goto_child_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-j>", goto_next_node, keyopts)
vim.keymap.set({ "n", "v", "o", "i" }, "<A-k>", goto_prev_node, keyopts)

View file

@ -0,0 +1,7 @@
return {
{
"chrisgrieser/nvim-puppeteer",
dependencies = "nvim-treesitter/nvim-treesitter",
lazy = false,
},
}

View file

@ -1,9 +0,0 @@
return {
{
"axelvc/template-string.nvim",
event = "BufRead",
config = function()
require("template-string").setup()
end,
},
}

View file

@ -0,0 +1,10 @@
return {
{
"sustech-data/wildfire.nvim",
event = "BufRead",
dependencies = { "nvim-treesitter/nvim-treesitter" },
config = function()
require("wildfire").setup()
end,
},
}