使用vim-gui-common实现从vim窗口复制内容到系统剪贴板

使用VIM编辑代码时,通常会将终端分割成多个窗口,好处是可以边改边review,坏处是不能正常使用系统剪贴板


以gnome-terminal为例,当你按下鼠标想复制右下子窗口内AudioConfig结构体的声明到剪贴板时,意外的把左下子窗口的内容也选中了,这时按ctrl-shift-c得到的一定不是你想要的

为什么会这样?

因为这些子窗口是vim创立的,gnome-termianl并不知道它们的存在,子窗口边界的哪些框框,对gnome-terminal来说不过就是vim的终端显示内容,与子窗口内的字符无异,所以出现上图那样的”整行“复制


当然,可以使用v命令选中子窗口的内容,但选中后仍然无法将其复制到系统剪贴板


这里就需要一个插件,叫vim-gui-common,可以将选中的内容复制到系统剪贴板

ubuntu下运行以下命令安装

sudo apt-get install vim-gui-common

装后运行:reg命令会看到多出2个寄存器,一个加号寄存器,一个减号寄存器

先使用v命令选中子窗口的内容,比如我选中之前说的AudioConfig结构体声明

然后按以下组合键

"+y

就将选中的内容复制到系统剪贴板了,从上图可以看到,加号寄存器的内容正是AudioConfig声明,这时你就可以ctrl-v到gedit之类的应用了

其他方式以此类推

”+yy

复制一行内容到系统剪贴板

gg"+yG

复制文件全部内容到系统剪贴板

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值