基本操作
- yy(Y):复制游标所在行整行
- 2yy(y2y):复制两行,可举一反三
- y^(y0):复制至行首,不含游标所在处字符
- y$:复制至行尾,含游标所在处字元。
- yw:复制一个字/单词
- y2w:复制两个字/单词
- 4yl :复制光标后的4个字符
4yh:复制光标前的4个字符
p:小写p代表粘贴到至游标后
- P:大写P代表粘贴到游标前
寄存器篇
Vim中,若要复制当前行,普通模式下按 yy 即可,在要粘贴的地方按 p 。这时vim将要复制的内容保存到了自己的寄存器。如果再执行yy,新的内容将覆盖掉原寄存器中内容。
如果想保存原寄存器中内容而同时增加新的内容,可以通过标签指定寄存器,标签以双引号开始,跟着标签名称,可以是数字0-9,也可以是26个字母。
例如:”1yy –>”1p
通过下面命令显示所有寄存器内容:
:reg
需要注意几个特殊的寄存器:”,”* 和 “+,其中”是默认的,直接使用y就复制到它,直接使用p也是访问它;另外两个是和系统相通的,前者关联系统选择缓冲区,后者关联系统剪切板,通过它们可以和其他程序进行数据交换。
在Vim外使用Ctrl+C时,数据保存到系统剪切板中,然后如果在Vim中使用p粘贴,会发现没有效果,因为粘贴操作访问的是vim的寄存器,而之前的数据保存在”+寄存器中。可以使用Shift+Insert,”+p,或者鼠标中键(Gvim下)都可以。
在看下选择缓冲区,简单地说就是鼠标选中的文字都实时存放在该缓冲区中,不过Windows下貌似没有。
可视模式篇
vim有一个可视模式(Visual Mode),此模式下可以进行区域选择。三种方法进入可视模式:
- v:简单可视模式
- V:行可视模式
- Ctrl+v:列可视模式
可视模式下通过移动光标就能选择内容,被选内容实时保存于选择缓冲区中。可以键入”+y将其保存到剪切板里,或者”ay等类似指令将内容保存到对应的寄存器中。
进阶篇
还没学到,mark一下别人的吧http://blog.youkuaiyun.com/xkfz008/article/details/6847286