这不是你要求的,但这可以在没有环绕声的情况下完成:
(from visual mode)
c
```
<C-r>"
```
<Esc>
参见
:help i_CTRL-R
。
c
:删除文本并开始插入。删除的文本被放入未命名寄存器中"
。<C-r>"
粘贴未命名寄存器中的内容。定义自定义环绕声:
(在您的
.vimrc
或文件特定配置 ~/.vim/after/ftplugin/markdown.vim
中插入以下内容)
" Custom surrounds
let b:surround_{char2nr('c')} = "```\r```"
现在视觉选择和
Sc
将为您提供所需的环绕声。
或者使用片段解决方案;例如使用 Ultisnips 定义一个片段,如下所示:
snippet code
\`\`\`${1}
${0:${VISUAL}}
\`\`\`
endsnippet
现在可视化选择您想要的行,然后点击片段扩展键(我的是
Tab
),输入code
并再次点击Tab
。就是这样。
这是另一个 ultisnips 解决方案。
snippet code "add backtics codes" w
`!v repeat(nr2char(96),3)` ${1:markdown}
${0:${VISUAL:type here}}
`!v repeat(nr2char(96),3)`
endsnippet
如果您不想在第一行之后出现“markdown”,请将其删除。我展示这个解决方案只是为了展示如何避免过多的反斜杠。