我用Vim 7.2,具有+ xterm_clipboard编译,在通过油灰一个的xterm。我已经把set clipboard=unnamed在.vimrc里,从我在其他线程读过,这应该把一切洋基/删除到系统剪贴板。然而,当我试图粘贴任何我已经拽住,记事本等MS的应用程序,它不工作。

当我使用鼠标在vim选择文本时,它自动被复制到系统(MS剪贴板)。我想具有相同的功能,而使用键盘等3yy命令。

谁能告诉我什么,我做错了什么?

有帮助吗?

解决方案

尝试

"+3yy
"*3yy

"+p
"*p

其他提示

如果你在本地运行的vim,然后或者

"+p
"*p

将工作,如通过黑客提及。既然你sshed到另一个框,这些都将只是文字复制到你sshed成箱的剪贴板。

您需要的是复制文本,这仅仅是腻子方法的突出显示要复制文本用鼠标。

虽然sshed成VIM虽然,我通常使用 ALT +突出用鼠标(块选择),作为本人通常对。行号

希望这有助于!

我试图找出如何让VIM里面腻子(不涉及任何的xterm)与Windows剪贴板进行交互。

我的研究,到目前为止表明这是不可能的。 xterm的剪贴板具有交互终端转义序列,但他们在默认情况下禁用的xterm。他们很可能不会在所有的腻子实现。这可能是出于安全方面的原因:你不想远程系统具有完全访问你的剪贴板

我不知道这是什么Vim的xterm_clipboard功能应该使用,反正。我搜索到目前为止只变成了人抱怨它没有被启用,或者谈论如何得到具有启用它,它不是如何实际实施的活力。我发现最好的是本指南其中提到它,但并没有说什么,就用别针把它向下逃生与X选择与X剪贴板序列。 (是,X11具有的选择和分离的剪贴板。复制的一些方法只设置一个或另一个。)


Vim的剪贴板支持直接会谈X服务器。在Linux桌面上,用vim在终端(的Konsole在我的情况):"*dd不把线到剪贴板。

使用

(unset DISPLAY; strace -s256 -o /dev/pts/18 vim some_file.txt)

VIM不具有X服务器交谈。 (pts18是另一个终端窗口的终端。)我想Vim可能使用 xterm的转义序列设置剪贴板,但事实并非如此。没有write(1, ...)系统调用与整个区域,所以它显然不尝试使用转义序列通过的xterm,以使该地区在剪贴板中。

我与TERM=xterm跑这一个Konsole的内部,在Ubuntu 15.04。我还尝试了真实xterm内部。

喔,xterm的默认禁用GetSelection/SetSelection。也许与此启用,VIM将尝试使用它? IDK如果这能帮助,不过,因为腻子也必须支持它,这是不可能的。

scroll top