如何从PuTTY粘贴到Vim 8.0?

脚本

Windows 10周年更新客户端…

  • 打开网页浏览器,从网站复制/粘贴一些文本(例如GitHub)
  • 使用PuTTY 0.67连接到Linux VM(例如,Ubuntu 16 Xenial Xerus)
  • 在Vim中打开一个文件
  • i改变到插入模式
  • 右键单击粘贴剪贴板内容

问题

不幸的是,当我在PuTTY会话中右键单击而不是粘贴剪贴板内容时,实际发生的事情是Vim正从INSERT模式转到(insert) VISUAL模式。 我以前从来没有见过这样的事情。

有谁知道为什么会发生这种情况,以及如何将Windows客户端剪贴板粘贴到SSH / Vim会话?

图片

看来,这个问题是由于VIM版本8.0和更高的默认值的变化。

以前的版本有鼠标模式关闭( mouse= ),但新的默认是鼠标模式打开( mouse=a )。

有三种方法来处理这种情况:

  1. 适应它 :打开鼠标模式,新的粘贴方法是右键单击 (至少在PuTTY中)
  2. 更改它 :通过输入:set mouse=和<enter>,您可以关闭当前VIM会话的鼠标模式
  3. 还原它 :您可以通过使用“C”开关( vim -C {filename} )调用VIM来覆盖新的默认值,并且它将恢复为该会话的Vi“compatible”设置

当然,你可以在你的.vimrc文件中添加set mouse=使其成为永久的。 但是这对我来说不起作用,因为我在不同的系统上跳来跳去。

我通过关闭鼠标模式解决了这个问题。

 :set mouse= 

我面临同样的问题

  1. 您只需要在vmrc文件vim $ HOME / .vimrc中进行更改
  2. 在文件集mouse- = a中设置为.vimrc

它工作正常