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

来源:互联网 发布:java开源外卖 编辑:程序博客网 时间:2024/06/05 16:03

使用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

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

0 0
原创粉丝点击