Wrap your visual blocks with a range of brackets and quotation characters
Once you've highlighted your text in visual-line (i.e. visual mode) mode you can use the following default keybinds to wrap your text:
| Keybind | Result |
|---|---|
<leader>[ |
[..text..] |
<leader>] |
[..text..] |
<leader>{ |
{..text..} |
<leader>} |
{..text..} |
<leader>( |
(..text..) |
<leader>) |
(..text..) |
<leader>< |
<..text..> |
<leader>> |
<..text..> |
<leader>" |
"..text.." |
<leader>' |
'..text..' |
| ``` | `..text..` |
Using packer
use 'bwintertkb/visual_wrap.nvim'Using lazy.nvim
{ 'bwintertkb/visual_wrap.nvim', opts = {} }Basic setup with defaults:
require("visual_wrap").setup()Override default keybindings or disable specific ones:
require("visual_wrap").setup({
keymaps = {
["["] = "<leader>s[",
["{"] = "<leader>s{",
["("] = "<leader>s(",
["'"] = "<leader>sq",
['"'] = "<leader>sQ",
["`"] = false, -- disable backtick wrapping
},
})Setting a keymap to false or nil disables that binding.
{
["["] = "<leader>[",
["]"] = "<leader>]",
["{"] = "<leader>{",
["}"] = "<leader>}",
["("] = "<leader>(",
[")"] = "<leader>)",
["<"] = "<leader><",
[">"] = "<leader>>",
['"'] = '<leader>"',
["'"] = "<leader>'",
["`"] = "<leader>`",
}The plugin is distributed under the Apache License, Version 2.0