vim常忘命令
1、复制指定行到当前光标的下一行。
#假设当前光标在10行,想把第5行复制到第11行 :5copy. #copy命令有2种简写'co'和't',所以也可以写成下面的格式 :5co. :5t.
参考:http://liuzhijun.iteye.com/category/270228
2、输入多次同一单词
#例如:输入10遍”look“ 1)移动到需要的地方后 2)按ese,确保处于编辑模式 3)输入需要的次数10 4)按i,输入需要的字 5)按ese #原理就是:在普通模式下输入次数,然后进入插入模式,输入文本,在ecs进入普通模式,完成。
3、想复制含有某个关键字的所有行到另外一个文件中,该如何操作呢?
例如:
<1>this is a
book;
<2>this is a
dog;
<3>this is a
english book;
要将所有含book的行copy出来。
方法: " Clear register A :let @a="" " Append all lines which matchs book to register A :g/book/y A " Open a new buffer :new " Paste content of register A into the new buffer :put a 解释: :let @a="" 使用let命令寄存器a里的内容清空 :g/book/y A 把所有包含book的行都添加到寄存器a中。注:此处是A而不是a,A意味着符合要求的行都被追加到寄存器a中,而a则意味着符合要求的行都会替代寄存器里的内容,如果用a就会导致最后寄存器里只有符合要求的最后一行。 至此,所有包含book的行都在寄存器a里面了。 :put a 把寄存器a里的内容粘贴出来 也可以直接写到文件中去: :g/book/. w >> filename
4、如果进行多行注释和取消注释?
注释: 1)ctrl+v 进入列编辑模式 2)向下或向上移动光标,把需要注释的行的开头标记起来 3)然后按大写的I 4)再插入注释符,比如"#" 5)再按Esc,就会全部注释了 取消注释: 1)ctrl+v 进入列编辑模式, 2)向下或向上移动光标,选中注释部分, 3)然后按d, 就会删除注释符号(#)。