summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/plugins/harpoon.lua
blob: b54248d4d9b4749e789f97405d329968b8758829 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
return {
    'ThePrimeagen/harpoon',
    branch = 'harpoon2',
    dependencies = { 'nvim-lua/plenary.nvim' },
    keys = {
        '<C-e>',
        '<leader>a',
        '<leader>1',
        '<leader>2',
        '<leader>3',
        '<leader>4',
        '<leader>5',
        '<leader>6',
        '<leader>7',
        '<leader>8',
        '<leader>9',
    },
    config = function()
        local harpoon = require('harpoon')
        harpoon:setup({
            settings = {
                save_on_toggle = true,
            },
        })

        vim.keymap.set('n', '<leader>a', function()
            harpoon:list():add()
        end)
        vim.keymap.set('n', '<C-e>', function()
            harpoon.ui:toggle_quick_menu(harpoon:list())
        end)

        for i = 1, 9 do
            vim.keymap.set('n', string.format('<leader>%d', i), function()
                harpoon:list():select(i)
            end)
        end
    end,
}