kickstart.nvim/lua/custom/plugins/harpoon.lua

47 lines
1.3 KiB
Lua

return {
'ThePrimeagen/harpoon',
branch = 'harpoon2',
lazy = false,
dependencies = {
'nvim-lua/plenary.nvim',
},
config = function()
local harpoon = require 'harpoon'
harpoon:setup()
-- Keymaps
vim.keymap.set('n', '<leader>a', function()
harpoon:list():add()
end, { desc = 'Harpoon: Mark file' })
vim.keymap.set('n', '<C-e>', function()
harpoon.ui:toggle_quick_menu(harpoon:list())
end, { desc = 'Harpoon: Toggle quick menu' })
vim.keymap.set('n', '<leader>h1', function()
harpoon:list():select(1)
end, { desc = 'Harpoon: Go to file 1' })
vim.keymap.set('n', '<leader>h2', function()
harpoon:list():select(2)
end, { desc = 'Harpoon: Go to file 2' })
vim.keymap.set('n', '<leader>h3', function()
harpoon:list():select(3)
end, { desc = 'Harpoon: Go to file 3' })
vim.keymap.set('n', '<leader>h4', function()
harpoon:list():select(4)
end, { desc = 'Harpoon: Go to file 4' })
-- Navigate to previous & next buffers in the list
vim.keymap.set('n', '<C-S-P>', function()
harpoon:list():prev()
end, { desc = 'Harpoon: Previous buffer' })
vim.keymap.set('n', '<C-S-N>', function()
harpoon:list():next()
end, { desc = 'Harpoon: Next buffer' })
end,
}