summaryrefslogtreecommitdiff
path: root/.config/nvim/lua/custom/plugins/nvim-surround.lua
blob: 73fea73ebfd109331c51f188830c6c46dc9a411e (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
40
41
42
43
44
45
return {
    'kylechui/nvim-surround',
    version = '*',
    keys = {
        { 'yS', '<Plug>(nvim-surround-normal)' },
        { 'ySS', '<Plug>(nvim-surround-normal-cur)' },
        { 'S', '<Plug>(nvim-surround-visual)', mode = 'v' },
        { 'cS', '<Plug>(nvim-surround-change)' },
        { 'dS', '<Plug>(nvim-surround-delete)' },
        { '(', '<Plug>(nvim-surround-visual)(', mode = 'v' },
        { ')', '<Plug>(nvim-surround-visual))', mode = 'v' },
        { '{', '<Plug>(nvim-surround-visual){', mode = 'v' },
        { '}', '<Plug>(nvim-surround-visual)}', mode = 'v' },
        { '[', '<Plug>(nvim-surround-visual)[', mode = 'v' },
        { ']', '<Plug>(nvim-surround-visual)]', mode = 'v' },
        { '`', '<Plug>(nvim-surround-visual)`', mode = 'v' },
        { '"', '<Plug>(nvim-surround-visual)"', mode = 'v' },
        { "'", "<Plug>(nvim-surround-visual)'", mode = 'v' },
    },
    opts = {
        keymaps = {
            insert = false,
            insert_line = false,
            normal_line = false,
            normal_cur_line = false,
            visual_line = false,
            normal = false,
            normal_cur = false,
            visual = false,
            delete = false,
            change = false,
            change_line = false,
        },
        surrounds = {
            ['('] = { add = { '(', ')' } },
            [')'] = { add = { '( ', ' )' } },
            ['{'] = { add = { '{', '}' } },
            ['}'] = { add = { '{ ', ' }' } },
            ['<'] = { add = { '<', '>' } },
            ['>'] = { add = { '< ', ' >' } },
            ['['] = { add = { '[', ']' } },
            [']'] = { add = { '[ ', ' ]' } },
        },
    },
}