如何在vim中调用函数调用?

时间:2010-12-21 13:34:08

标签: vim editing

假设一行文字为:

$x = ( frobnicate( foo( bar( $x, $y )[ 1 ]))[ 1 ]);

光标位于'frobnicate'的'f'上,我想要抓住包含对frobnicate的调用的文本。 (也就是说,一切都是第三个右括号。我当然可以这样做:

y3f)

或与

交互式地进行
vf);;y

但这些都不具吸引力。 (我不想手动计算'3',也不要重复查找,直到我到达终点。)是否有一种简单的方法可以完成从'f'到匹配关闭paren的移动?我在想像v_i'内部词'运动命令。

2 个答案:

答案 0 :(得分:10)

y%似乎有效。

来自help %

  

在此后找到此行中的下一个项目   或者在光标下跳转到它   比赛。包容性动议。物品可以   be:([{}])括号或   (卷曲/方形)括号

答案 1 :(得分:0)

您可以尝试yel%将光标定位到左括号,然后使用%跳转到最后一个,但它看起来效率不比当前解决方案高。

唯一的好处是你不需要计算任何东西,它适用于嵌套调用。

编辑: 正如彼得所指出的那样,y%起作用并且是一种优越的解决方案(即使我不太明白为什么它有效.Vim太神奇了!)