lerdor 2015-08-27
在vimrc里边加入下面几行,可以实现多个terminal间的复制粘贴。 (只适用于Mac) vmap y :w !pbcopy<CR><CR> nmap yy :.w !pbcopy<CR><CR> nmap p :r !pbpaste<CR><CR>
【解说】
这里主要得益于mac下的一套好用的操作系统剪贴板的命令:
pbcopy, pbpaste .
比如说可以这样使用:
cat foo.txt | pbcopy #将foo.txt的内容复制到系统剪贴板
pbpaste > bar.txt #将系统剪贴板的内容写到bar.txt
然后vim的w !和r !(注意中间的空格)可以负责把某一段文字
写入或从某一个命令读出,有点类似linux的管道功能。
这里把vim默认的y和p功能改掉,让y直接复制到系统剪贴板,
让p从系统剪贴板直接粘贴;故实现了多个terminal之间的剪贴板共享。
而且由于操作的是系统剪贴板,同时也实现了terminal的vim与其他
应用程序之间的剪贴板共享。