我的gvim用上了vimacs插件,但是C-y却只能粘贴在gvim里复制的东西,没有办法粘贴gvim以外的程序拷贝到Windows剪贴板的内容。
我仔细地看了一下vimacs-0.95.vim里的代码,要粘贴其它程序复制到Windows剪切板的内容,需要用键Shift + Insert来实现;而粘贴gvim里复制到剪切板的内容,则需要用C-y键。
同样,在gvim里,M-w只能拷贝选中的内容到gvim的剪切板;要在gvim里把选中的内容复制到Windows的剪切板,则需要用键Control + Insert来实现。
这样的设置多少有些烦人!大部分情况下,我都是拷贝好内容后,就去粘贴,这个粘贴的地方并一定就是gvim里的某个文档,我需要一复制,即可以到处使用。像vimacs这样过细的键功能划分,实在是有点让我手足无措。
为了让M-w能把内容同时拷贝到gvim和windows的剪切板,把
vnoremap <C-Ins> “*y
改为
vnoremap <M-w> “*y
即可。
为了让C-y能粘贴gvim或Windows剪切板中最新拷进来的内容,把
inoremap <S-Ins> <C-r><C-o>*
改为
inoremap <C-y> <C-r><C-o>*
即可。
现在这样的设置就和我Emacs里的设置一模一样了,用起来舒服多了。这个方法只在Windows下测试过了,其它平台有机会再测试一下。