如果我想用这样的括号括住特定的文本,我应该使用哪个 vim 插件?

如果我想用这样的括号括住特定的文本,我应该使用哪个 vim 插件?

我只是想改变

for(int i = 1; i <= N; i++) if(ord[i] == -1) dfs(i, 0, i);

for(int i = 1; i <= N; i++) {
    if(ord[i] == -1) dfs(i, 0, i);
}

我应该按尽可能少的键。

我找到了插件“surround”,但它似乎有一些功能(如“yss{”),用括号包围整个文本行,但不是我想要包围的块。如果可能的话,我必须在某个位置添加一些新行,所以我认为这会很不舒服。

而且我还找到了一些原始的 vim 命令,但是太长了,似乎花费了太多时间。

如果你们能告诉我应该使用哪个插件,我会非常高兴。谢谢!

答案1

使用 around.vim 插件可以轻松完成此操作:首先,您需要进行视觉选择if(ord[i] == -1) dfs(i, 0, i);(例如使用f)llv$),以便插件知道要环绕什么。

可视模式gS命令包围并放置在新行上。对于花括号,即gS{

相关内容