在vim中复制条件语句

时间:2015-04-01 23:24:23

标签: vim editor vi

是否有一个简单的键盘快捷键来复制vim中的条件语句?我有if条件,如

  1: if (some condition) {
  2:     // do many things in multiple lines
100: }

通过将光标放在第1行来键入y%,将行从2复制到100.有没有办法从第1行复制到100?我尝试了ya%yi%,但没有任何帮助。我也可以使用标记复制或记下行号,但这是一项耗时的任务。其他条件陈述的类似要求也是。

2 个答案:

答案 0 :(得分:1)

通常我所做的是将光标放在{上,然后执行V%y(注意大写'V')。

如果周围有空白行但不在if语句中,则可以yap对段落进行扫描。这是一个很大的“如果”。

可能不是最好的方式。

答案 1 :(得分:0)

您可以va{vaB,然后:'<,'>y(自动为您插入范围)。

vaB,然后V将“视觉”选择转换为“视觉线”选择,然后y

坚持使用ex命令,您可以从:,/^}/y行或if从条件中的某个位置执行:?if?,/^}/y

此外,如果您可以将该条件折叠为单行,则可以使用简单的yy来拉动封闭折叠中的所有行。

相关问题