1. vim中的复制操作
相当于unix或windows中的ctrl+c,但是只在Vim会话生效,不影响剪切板。命令格式如下:
{count}y{motion}
例如复制3个单词:
3yw
其中3表示复制的个数是{count}部,y为复制命令,w表示单词是{motion}部分。这条命令的{count}还可以放yank命令和{motion}中间:
y3w
也可以用yy命令复制插入符所在的行,同样可以在前面加{count}指定复制的行数。
还可以复制可视模式下所选择的内容,命令的格式为:
可视模式的操作方法请参考2.3节 可视模式。
2. Vim中的删除操作
Vim可以通x/X命令删除单个或多个字符,也可以通过delete命令删除任意字符。x命令的格式:
{count}x/X
x从前向后删除,X从后向前删除。
delete命令的格式:
{count}d{motion}
例如删除3个单词:
3dw
其中3表示删除的个数是{count}部分,d为删除命令,w表示单词是{motion}部分。这条命令的{count}还可以放在delete和{motion}中间:
d3w
也可以用dd命令删除插入符所在的行,同样可以在前面指定要删除的行数{count}。
还可以删除可视模式下所选择的内容,命令的格式为:
可视模式的操作方法请参考2.3节 可视模式。
3. Vim中的粘贴操作
小写字母p在当前行的下一行粘贴yank或delete的内容,默认情况下yank和delete内容存储在””(:h quote_quote)寄存器。大写字母P在当前行的上一行粘贴yank或delete的内容。
4. 系统剪切板的应用
“+y或”*y命令拷贝Vim中所选择的内容到系统剪切板。
系统剪切板中的内容用paste命令无法完成粘贴,这里要使用各个系统的粘贴快捷键,Windows/Unix下使用Ctrl+v或者使用Shift+Insert,MacOS系统下使用Command+v。
在类Unix系统中“+和“*两个寄存器的操作需要Vim支持+xterm-clipboard属性,在编译Vim时可以选择这个属性。查看Vim当前是否支持该属性方法是在shell中执行vim —version,或者运行Vim时使用:version命令。