return { 'kylechui/nvim-surround', version = '*', keys = { { 'yS', '(nvim-surround-normal)' }, { 'ySS', '(nvim-surround-normal-cur)' }, { 'S', '(nvim-surround-visual)', mode = 'v' }, { 'cS', '(nvim-surround-change)' }, { 'dS', '(nvim-surround-delete)' }, { '(', '(nvim-surround-visual)(', mode = 'v' }, { ')', '(nvim-surround-visual))', mode = 'v' }, { '{', '(nvim-surround-visual){', mode = 'v' }, { '}', '(nvim-surround-visual)}', mode = 'v' }, { '[', '(nvim-surround-visual)[', mode = 'v' }, { ']', '(nvim-surround-visual)]', mode = 'v' }, { '`', '(nvim-surround-visual)`', mode = 'v' }, { '"', '(nvim-surround-visual)"', mode = 'v' }, { "'", "(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 = { '[ ', ' ]' } }, }, }, }