2014-05-08 73 views
0

的结束,我想搜索和替换的代码块我。Vim的搜索替换代码块

是年底基本上我想搜索在运动]}

我试图

:]}s/=/+=/gc 

,并没有奏效。 “解析错误”

我正在Visual Studio中使用VsVIM,如果这有所作为。

回答

1

:范围不采用动作参数。你可以通过视觉方式做到这一点:

v]}:S/=/+ =/GC

注意,当你打:在可视化模式,它会嵌入范围为您。

+0

正是我最不击键寻找。谢谢。我忘了用视觉模式来做这件事。 –

1

您可以选择与 { Shift-v }

那么块做:

:s/src/dst/g 
+0

这实际上选择了一个段落(这意味着它从一个空白行到一个空白行),而不仅仅是代码块的末尾,但它无论如何都是有用的。 –

1

我不知道这是否会在VsVim工作,但你可以做这样的事情在Vim的:

[{v]}:s/=/+=/gc 

请注意,您也可以使用数字范围:

:56,75s/=/+=/gc 
+0

既有用,又非常接近我的目标。 –

1

正如hepta说,你可以做视觉模式,然后你的替换。

你也可以做:.,.5s/old/new/gc

或者:.,/}/-1s/old/new/gc

vim.wikia.com/wiki/Ranges

+0

第一种方法工作,第二种不在VsVIM中。我在VIM中尝试过它,它可能...... Bug也许 –