@Dan Lowe关于使用repeat.vim的答案,并且.是现货.但是,您也可以创建自定义环境以使常见操作更快一些.
将以下内容添加到您的~/.vim/after/ftplugin/markdown.vim文件中:
let b:surround_{char2nr('b')} = "**\r**"
Run Code Online (Sandbox Code Playgroud)
现在你可以ysiwb使用double *(b粗体)来包围.
有关定制环境的更多帮助请参阅:h surround-customizing.
安装vim-repeat插件,然后你可以用.(repeat 操作符)来做到这一点。
您可能需要在ysiw*l.这里使用,因为(至少,当我测试时)围绕。vim 将光标留在第一个周围字符上,因此您必须移回单词以重复最后一个环绕。否则你最终会得到***word*.
更新:有趣的是,在阅读了提到这个答案的 Peter Rincker 的答案后,我发现他的建议是在我自己的 Vim 设置中。但是我没有把它放在 after 文件中,我的直接放在 . 中.vimrc,如下所示:
autocmd FileType markdown,octopress let b:surround_{char2nr('i')} = "*\r*"
autocmd FileType markdown,octopress let b:surround_{char2nr('b')} = "**\r**"
Run Code Online (Sandbox Code Playgroud)