当鼠标 (:set mouse=a) 打开时,vim 的复制粘贴不起作用?

Cha*_*ker 65 vim clipboard

我试图将某些内容从 vim 复制粘贴到另一个应用程序,并且从该应用程序复制粘贴到vim使用鼠标右键单击然后复制和粘贴(或使用Ctrl+vCtrl+c并且还尝试了Commandmac OSX 版本,显然。)。但是,当我尝试这样做时,它只复制第一个单词,vim当我从应用程序复制或从应用程序复制到 时vim,它会复制所有内容,但会插入奇怪的制表符和空格。我认为这发生在我决定在终端上设置鼠标时。如:

:set mouse=a
Run Code Online (Sandbox Code Playgroud)

.vimrc在 iTerm (mac os x)上的文件中有该行。但是,是否可以将我的复制粘贴与其他vim不中断的应用程序一起粘贴mouse=a?或者至少可以在我复制粘贴时关闭鼠标?我做了:help鼠标,但评论对我没有用。我会把它们粘贴在这里但是...我的复制粘贴工具坏了!

我确实尝试过:set mouse!:set mouse=a!但这些没有任何用处...... :(


我的环境的附加信息:

我大部分时间也在使用 tmux,不过,我在没有 tmux 会话的情况下测试了这个错误/错误,这就是为什么我主要将其发布为 vim 问题。

bgr*_*rif 90

mouse=a 防止复制和粘贴具有可读字符的 vim 的能力。

更改mouse=amouse=r,应该可以解决您的问题。

我想知道的一件事是,您是否在将鼠标设置为 mouse=a 的情况下更改 vim 的配置文件?

原始答案^

如果mouse=r没有为您提供所有复制过去选项,请将其更改为mouse=v

双方mouse=rmouse=v有你需要相同的功能,但根据的vimrc您使用一个将更好地工作,然后其他的。


小智 29

对于 OS X 用户:复制粘贴mouse=a使用alt而不是Shift选择文本。然后cmd-ccmd-v正常工作。

经过大量谷歌搜索后,在这里找到了这个答案/sf/answers/322587121/

  • 对我来说,在 OSX 上使用“fn”而不是“shift”或“alt”。 (7认同)

小智 12

来自/sf/ask/322571301/

用鼠标选择时按“shift”键。这将使鼠标选择的行为就像 mouse=a 未启用一样。

这是有效的,并且已经被接受它作为答案的 stack-overflow 的评论者验证了:)


小智 8

有同样的问题:无法使用鼠标突出显示,因此无法从终端会话中的 VIM 复制并粘贴到 Windows 文档和浏览器:执行以下操作,现在可以使用了:

: set clipboard=unnamedplus
: set mouse=r
Run Code Online (Sandbox Code Playgroud)


amr*_*mrx 6

Bharath 的解决方案Shift在复制时按下,会做到这一点,但它复制的内容会超过您在编号或散列注释的情况下想要复制的内容。

即使使用mouse=a这样做的一种方法是使用视觉模式,通过按V单个光标或Shift+V来突出显示全行,您可以使用箭头向上或向下移动并用于Y复制或D剪切,这应该可以工作。