Skip to content

Commit f0a8069

Browse files
authored
add harpoon
1 parent 9ca43d4 commit f0a8069

1 file changed

Lines changed: 37 additions & 0 deletions

File tree

lua/custom/plugins/harpoon.lua

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
return {
2+
"ThePrimeagen/harpoon",
3+
branch = "harpoon2",
4+
dependencies = { "nvim-lua/plenary.nvim", 'nvim-telescope/telescope.nvim' },
5+
config = function()
6+
local harpoon = require('harpoon')
7+
harpoon:setup({})
8+
9+
-- basic telescope configuration
10+
local conf = require("telescope.config").values
11+
local function toggle_telescope(harpoon_files)
12+
local file_paths = {}
13+
for _, item in ipairs(harpoon_files.items) do
14+
table.insert(file_paths, item.value)
15+
end
16+
17+
require("telescope.pickers").new({}, {
18+
prompt_title = "Harpoon",
19+
finder = require("telescope.finders").new_table({
20+
results = file_paths,
21+
}),
22+
previewer = conf.file_previewer({}),
23+
sorter = conf.generic_sorter({}),
24+
}):find()
25+
end
26+
-- keybindings
27+
vim.keymap.set("n", "<leader>h", function() toggle_telescope(harpoon:list()) end,
28+
{ desc = "Open harpoon window" })
29+
30+
vim.keymap.set("n", "<leader>a", function() harpoon:list():add() end, { desc = "Add to harpoon" })
31+
32+
for key = 1, 9 do
33+
vim.keymap.set("n", "<leader>" .. key, function() harpoon:list():select(key) end,
34+
{ desc = "Open harpoon window " .. key })
35+
end
36+
end
37+
}

0 commit comments

Comments
 (0)