【背景知识】
- vim 有 12 个粘贴板,分别是 0、1、2、...、9、a、“、+;用 :reg 命令可以查看各个粘贴板里的内容。在 vim 中简单用 y 命令只是复制到 "(双引号)粘贴板里,同样用 p 命令粘贴的也是这个粘贴板里的内容;
- 要将 vim 的内容复制到某个粘贴板,需要先退出编辑模式,再进入命令模式后,选择要复制的内容,然后按 "Ny(注意带引号)完成复制,其中 N 为粘贴板号(注意是按下 双引号 + 粘贴板号 + y),例如要把内容复制到粘贴板 a,选中内容后按 "ay 就可以了,有 2 点需要说明一下:
- " 号粘贴板(临时粘贴板)比较特殊,直接按 y 就复制到这个粘贴板中了,直接按 p 就粘贴这个粘贴板中的内容;
- + 号粘贴板是系统粘贴板,用 "+y 将内容复制到该粘贴板后可以使用 ctrl+v 将其粘贴到其他文档(如 firefox、gedit)中,同理,要把在其他地方用 ctrl+c 或右键复制的内容复制到 vim 中,需要在正常模式下按 "+p;
- 要将 vim 某个粘贴板里的内容粘贴进来,需要先退出编辑模式,再在命令模式按 "Np,其中 N 为粘贴板号,如上所述,命令 "5p 会将 5 号粘贴板里的内容粘贴进来,也可以按 "+p 将系统全局粘贴板里的内容粘贴进来。
【复制】
1. 常用复制命令:
yy 复制游标所在行整行
2yy或y2y 复制 2 行
y^ 复制至行首,或y0
y$ 复制至行尾
yw 复制一个word
y2w 复制两个word
yG 复制至文件尾
y1G 复制至文件首
2. 选中文本进行复制:
要选中内容进行复制,先在命令模式下按 v 进入 Visual Mode,然后用方向键 或 hjkl 选择文本,再按 y 进行复制。
【剪切】
1. 常用剪切命令:
dd 剪切游标所在行整行
d^ 剪切至行首,或d0
d$ 剪切至行尾
dw 剪切一个word
dG 剪切至文件尾
2. 选中文本进行剪切:
要选中内容进行复制,先在命令模式下按 v 进入 Visual Mode,然后用 方向键 或 hjkl 选择文本,再按 d 进行剪切。
【粘贴】
1. 常用粘贴命令:
p 粘贴至游标后(下)
P 粘贴至游标前(上)
2. 要使用 系统粘贴板 的内容,也可以直接在命令模式按 Shift + Inset 进行粘贴。
【撤销】
在命令行模式下用 :undo 或 :u 命令可以撤销最近一次操作。
【参考文献】
[1] 《vi/vim复制粘贴命令》
[2] 《vim复制》