• [转]vim下鼠标右键无法复制的解决


    转自:http://bbs.csdn.net/topics/270070764

    这个问题的原因应该是你的vim修改了配置文件,增加了下面这一句

           set mouse=a;

        vi的三种模式:命令模式,插入模式,可视模式.鼠标可以启动于各种模式中:
    The mouse can be enabled for different modes:
    n       Normal mode
    v       Visual mode
    i       Insert mode
    c       Command-line mode
    h       all previous modes when editing a help file
    a       all previous modes
    r       for |hit-enter| and |more-prompt| prompt

        加了这句后,在vim中就开启了在所有模式下的鼠标右键功能,这样就屏蔽了鼠标右键的复制功能

        我在网上看了大部分人的解决办法都是注释掉set mouse=a这句或者将其值赋为空,这样确实可以用右键复制了,但是下次vim写代码时就没有鼠标点哪光标到哪的功能了。所以这个方法还不是一个很好的解决方法。

           其实在vim里面可以通过其自带的寄存器(通俗点就是剪切板)功能来实现我们需要的复制功能。

           我们可以在vim下面选中一段文字(需退出编辑模式) 然后输入y,这样就把当前选中的文字复制到vim的临时寄存器(*号寄存器)中了,再在我们需要粘贴的地方输入“*p就可以将临时寄存器中的内容粘贴进来 (也可以直接按鼠标中键)。我们可以通过:reg命令查看寄存器中的内容。

            补充:

                   如果输入”1y 就是将选中的内容复制到1号寄存器,”2y就是将内容复制到2号寄存器,粘贴“寄存器号p,例如:”1p,“2p;其中有两个寄存器比较特殊,一个是*, 另一个是+,*也就是我们上面说的寄存器,在选中文字的情况下,直接按y,默认复制到*寄存器。

           下面我们来说这个+寄存器,当我们需要将vim里面的内容复制到别的地方时,假如是word中,就不能通过”1p将寄存器复制到word下面,因为 word没有1号寄存器这种东西,它只是在vim下存在,这时我们就需要用到+寄存器了,因为+寄存器是和系统剪贴板相通的,也就是复制到#号剪贴板的内 容也会同时存在与系统剪切板内,这下,我们可以通过“+y现将内容复制到系统剪切板上,然后直接在word里面右键粘贴或者ctrl+v就行了。

  • 相关阅读:
    构建之法:第二次心得
    构建之法:第一次心得
    tomcat配置限制ip和建立图片服务器
    tomcat8.5优化配置
    java 操作 csv文件
    jsoup教学系列
    (转)js实现倒计时效果(年月日时分秒)
    本地启动tomcat的时候报java.util.concurrent.ExecutionException: java.lang.OutOfMemoryError: PermGen space
    使用mybatis执行oracle存储过程
    java 获取web登录者的ip地址
  • 原文地址:https://www.cnblogs.com/pengzhiwei/p/3096036.html
Copyright © 2020-2023  润新知