我正在使用vim-surround插件和这个HTML(其中*是我的光标):
<li class="sample" style="border-color: #005462;">*#005462</li>
我想用<code>
围绕#005462,所以看起来像<code>#005462</code>
。我可以用可视模式做到这一点,但我想做一些我可以用点运算符重复的事情。有什么建议吗?
答案 0 :(得分:9)
您希望repeat.vim为其他几个插件添加.
支持,包括环绕声。
答案 1 :(得分:6)
从正常模式尝试录制宏。然后:
qai<code><esc>ea</code><esc>q
您可以使用@a或@@重复此命令以重复上次使用的命令。 当你调用a时不要忘记在rigth位置定位,否则你将无法获得预期的结果。
答案 2 :(得分:1)
其他一些人在使用surround.vim重复问题时遇到了问题:
在第一个链接中,来自surround.vim文档的引用暗示视觉模式周围不起作用:
“。”命令适用于ds,cs, 如果您安装repeat.vim
,则为yss
考虑到围绕它的文本元素,我认为没有办法在不使用可视模式的情况下围绕#005462。
对于这个特殊问题,我认为快速,可重复的搜索和替换是您最好的选择。
:s/: \(#......\);/: <code>\1<\/code>;/g
转到右侧,在命令行模式下键入或粘贴它,然后按Enter键。
移至下一行并按&
重复此操作。
如果您知道要在文件中替换所有这些文件,可以在%
命令之前添加s/
,如下所示:
:%s/: \(#......\);/: <code>\1<\/code>;/g
希望这有帮助!
答案 3 :(得分:0)
查看有关将haml转换为erb的this Vimcasts.org集。您可以使用相同的技术来完成任务。