是否有一个简单的键盘快捷键来复制vim中的条件语句?我有if条件,如
1: if (some condition) {
2: // do many things in multiple lines
100: }
通过将光标放在第1行来键入y%
,将行从2复制到100.有没有办法从第1行复制到100?我尝试了ya%
,yi%
,但没有任何帮助。我也可以使用标记复制或记下行号,但这是一项耗时的任务。其他条件陈述的类似要求也是。
答案 0 :(得分:1)
通常我所做的是将光标放在{
上,然后执行V%y
(注意大写'V')。
如果周围有空白行但不在if语句中,则可以yap
对段落进行扫描。这是一个很大的“如果”。
可能不是最好的方式。
答案 1 :(得分:0)
您可以va{
或vaB
,然后:'<,'>y
(自动为您插入范围)。
或vaB
,然后V
将“视觉”选择转换为“视觉线”选择,然后y
。
坚持使用ex命令,您可以从:,/^}/y
行或if
从条件中的某个位置执行:?if?,/^}/y
。
此外,如果您可以将该条件折叠为单行,则可以使用简单的yy
来拉动封闭折叠中的所有行。