如果是在同一个VIM进程下操作多个文件,比如使用插件或者分割窗口,可以使用yy和p直接解决。
但如果是多个不同的VIM进程分别打开文件,上面的方案就不好使了。
还有vim与非VIM之间的复制粘贴,同样如此。
那该如何解决呢?
解决步骤:
1.首先,查看vim版本是否支持clipboard
vim --version | grep "clipboard"
如果clipboard前面有一个减号,说明不支持。
2.如果不支持的话,需要安装图形化界面的vim
sudo zypper in gvim
安装完成后再次执行
vim --version | grep "clipboard"
发现已经支持clipboard
3.复制粘贴
(1)不同vim进程之间的复制粘贴
"+是系统剪切板
用:reg命令可以查看寄存器里的内容
在一个vim进程中,进入一般模式后,按"+nyy完成复制。
"+为寄存器,n为你想要复制的行数,例如,复制当前以下11行内容,则只需按"+11yy就可以了。
在另一个vim进程中,进入一般模式,在要粘贴的位置按"+p
(2)vim与非vim之间的复制粘贴
在vim中按"+nyy将内容复制到粘贴板,然后使用Ctrl+V将其粘贴到其他文档中。
在其他地方用Ctrl+C复制到剪切板,然后使用"+p粘贴到vim中