繁体   English   中英

如何在可视模式下使用HTML标记重复VIM环绕

[英]How to repeat VIM surround with HTML tag on Visual mode

根据Tim Pope的说法,我们可以做到以下几点:

Finally, let's try out visual mode. 
Press a capital V (for linewise visual mode) followed by S<p class="important">.

你得到了这个

<p class="important">
  <em>Hello</em> world!
</p>

我试过,它的工作原理。 但是,如何在许多其他视觉块上重复该命令? 我试过了. 但没有奏效。

更新:

有了这个文字:

foo
foo
foo

我试过这个qqgvS<p class="important">q 它正确地给出了

<p class="important">
foo
</p>
foo
foo

但是当我重复这个@q (光标放在第二行的f字母上)时,它给出了:

<p>
<p class="important">
foo
</p>
</p>
foo
foo

代替

<p class="important">
foo
</p>
<p class="important">
foo
</p>
foo

什么是正确的方法呢?

你不能; repeat.vim插件只处理正常模式的重复。 我写过一个配套的visualrepeat插件 ,但是surround.vim并不支持它。

对于内置命令,您可以通过gv:normal .<CR>执行可视选择,但这在此处不起作用。

我看到的唯一选择是记录宏,然后在每个先前的选择上执行(通过使用gv )。

我通常会这样做:

:'<,'>norm! yss<p>

作为替代方案,您可以录制宏并在每一行上播放它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM