分页: 1 / 3
[讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:06
由 adagio
代码: 全选
"在插入模式中使用Ctrl+v粘贴全局剪贴板内容
inoremap <C-v> <esc>:set paste<cr>mui<C-R>+<esc>mv'uV'v=:set nopaste<cr>
"在Visual模式中使用Ctrl+c复制内容到全局剪贴板
vnoremap <C-c> "+y
"在Visual模式中使用Ctrl+x剪切内容到全局剪贴板
vnoremap <C-x> "+x
用vi以来最感觉不爽的就是对系统剪贴板的使用了
众所周知,
Ctrl+C、Ctrl+X、Ctrl+V这三个按键,明明在windows和linux里都是通用的粘贴、剪切、复制操作,而且都是针对全局剪贴板的,可是vi偏不这样
当然vi有自己的道理,如果强行用 map <C-V> "+gP方式,倒是达到了目的,但这样的话,超好用的块选择模式就没了,那vi就将局部退化成了gedit之类的玩意
强行改变Ctrl+C、Ctrl+X的影射,也有类似问题,这样的话要vi何用?直接用gedit或者kate算了
但我用了那么久的电脑,这个下意识的按键习惯怎能说改就改?
所以在vi里经常杯具……
这下好了,总算找到一个老外的设置,基本解决了我的问题,原因如下:
Ctrl+V在插入模式里是用来输入十、八、十六进制值数字的,对我没用,干脆影射到全局剪贴板的
粘贴,使用后感觉不错
然后自己再扩展一下
Ctrl+X、Ctrl+C两个按键在visual模式里根本没用(Ctrl+C在visual模式里效果等同于Esc),干脆分别影射到全局剪贴板的
剪切和复制
这样在插入模式里我可以用
Ctrl+V粘贴全局剪贴板内容
在visual模式里我可以用
Ctrl+X--->剪切选定内容到全局剪贴板,
Ctrl+C--->复制选定内容到全局剪贴板
同时又达到最小限度的影响vi原有按键功能的目的,挖哈哈哈~~~~~
大家说说这样好不好?有没有什么缺陷?
或者你有更好的办法请跟帖说明

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:10
由 adam8157
不是有个win下gvim自带的mswin.vim的插件么?

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:17
由 黄美姬
同学们说好不好?----------常听胡锦涛在电视上如此

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:31
由 adagio
adaml 写了:不是有个win下gvim自带的mswin.vim的插件么?

我说的是在linux用vi
你说的mswin.vim,在官网没有找到啊
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:48
由 风间星魂
代码: 全选
Esc::CapsLock
CapsLock:: Esc
win下用autokey互换了esc和大小写锁定,在linux直接gnome设置互换。这下vim爽多了。
ctrl+c也可以空出来了

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:53
由 adagio
ls这个啥名堂?没看懂
互换了有啥好处?

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:56
由 haichang417
在选中文字的时候就已经复制了,找个地方按鼠标中键就粘贴了啊。
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 17:58
由 风间星魂
adagio 写了:ls这个啥名堂?没看懂
互换了有啥好处?

左手小指头就可以按"esc"了

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 18:25
由 adagio
haichang417 写了:在选中文字的时候就已经复制了,找个地方按鼠标中键就粘贴了啊。
对于gvim
如果你设置了mouse=a,用中键粘贴你就必须先定位鼠标指针;除非你禁用鼠标,这不是你想要的效果吧?
另外,中键粘贴的东西,可不是CTRL+C的咚咚
再说了,在控制台下用vim你咋整?
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 18:26
由 adagio
风间星魂 写了:adagio 写了:ls这个啥名堂?没看懂
互换了有啥好处?

左手小指头就可以按"esc"了


Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 18:27
由 leeaman
支持一个,我用vi还没有复制粘贴过,gvim除外

Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 19:35
由 onelynx
adagio 写了:代码: 全选
"在插入模式中使用Ctrl+v粘贴全局剪贴板内容
inoremap <C-v> <esc>:set paste<cr>mui<C-R>+<esc>mv'uV'v=:set nopaste<cr>
"在Visual模式中使用Ctrl+c复制内容到全局剪贴板
vnoremap <C-c> "+y
"在Visual模式中使用Ctrl+x剪切内容到全局剪贴板
vnoremap <C-x> "+x
用vi以来最感觉不爽的就是对系统剪贴板的使用了
众所周知,
Ctrl+C、Ctrl+X、Ctrl+V这三个按键,明明在windows和linux里都是通用的粘贴、剪切、复制操作,而且都是针对全局剪贴板的,可是vi偏不这样
当然vi有自己的道理,如果强行用 map <C-V> "+gP方式,倒是达到了目的,但这样的话,超好用的块选择模式就没了,那vi就将局部退化成了gedit之类的玩意
强行改变Ctrl+C、Ctrl+X的影射,也有类似问题,这样的话要vi何用?直接用gedit或者kate算了
但我用了那么久的电脑,这个下意识的按键习惯怎能说改就改?
所以在vi里经常杯具……
这下好了,总算找到一个老外的设置,基本解决了我的问题,原因如下:
Ctrl+V在插入模式里是用来输入十、八、十六进制值数字的,对我没用,干脆影射到全局剪贴板的
粘贴,使用后感觉不错
然后自己再扩展一下
Ctrl+X、Ctrl+C两个按键在visual模式里根本没用(Ctrl+C在visual模式里效果等同于Esc),干脆分别影射到全局剪贴板的
剪切和复制
这样在插入模式里我可以用
Ctrl+V粘贴全局剪贴板内容
在visual模式里我可以用
Ctrl+X--->剪切选定内容到全局剪贴板,
Ctrl+C--->复制选定内容到全局剪贴板
同时又达到最小限度的影响vi原有按键功能的目的,挖哈哈哈~~~~~
大家说说这样好不好?有没有什么缺陷?
或者你有更好的办法请跟帖说明

缺陷很明显,C-V 不行,C-V 是进入块编辑模式
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-24 19:39
由 haichang417
哦,我试了一下,的确不是Ctrl + C的内容,是最近选择的内容。
我没用过gvim。vim还是很强大的,控制台下也有复制的命令,并且可以存到a-z的寄存器中,这样可以实现分段复制,还能实现多文本的编辑。不过这需要多多练习才能用到如火纯情。
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-25 13:01
由 adagio
fzq5012 写了:缺陷很明显,C-V 不行,C-V 是进入块编辑模式
你这人,没仔细看帖喔
我的C-V粘贴是在插入模式才起作用啊,在normal模式一样是块编辑,根本不会冲突
同理,C-C和C-X也是只有在visual模式才起作用
Re: [讨论]在vim中合理的使用Ctrl+C、Ctrl+X、Ctrl+V操作系统(全局)剪贴板
发表于 : 2010-01-25 13:58
由 onelynx
adagio 写了:fzq5012 写了:缺陷很明显,C-V 不行,C-V 是进入块编辑模式
你这人,没仔细看帖喔
我的C-V粘贴是在插入模式才起作用啊,在normal模式一样是块编辑,根本不会冲突
同理,C-C和C-X也是只有在visual模式才起作用
我承认一开始没看清,但是还是认为C-v的设置不好,用默认的S-insert不是更好?