在vim中使用xclip,猛拉到剪贴板

时间:2011-03-09 01:45:12

标签: vim

我在Ubuntu中有vim 7.2(-clipboard -xterm_clipboard ...)。你可以看到它不支持剪贴板。所以我想编写一个小的vim脚本,它使用xclip工具将视觉选择的文本复制到剪贴板中。

你知道xclip工具是这样的:

echo 'hello' | xclip -selection clipboard      #it copies 'hello' into clipboard

vim可以运行shell命令,所以我想将视觉选择的文本复制到where而不是'hello',但我不知道如何组合xclip和vim。你能帮我实现吗?

谢谢你的时间!

2 个答案:

答案 0 :(得分:24)

您使用的是分发提供的vim吗?如果是这样,vim-tinyvimvim-nox软件包没有剪贴板支持,但它确实存在于vim-lesstiffvim-gtk和{{1} }。

如果你坚持按照自己的方式去做,

vim-gnome

会将当前选定的行发送到xclip和

:'<,'>w !xclip

将最后一次发送到xclip。

答案 1 :(得分:1)

对我来说,即使*+,Vim仍然无法通过SSH复制到:echo has('clipboard')1寄存器,并且其他X程序仍然有效。对我来说,解决方案是将映射(通过寄存器)添加到xclip:

vnoremap <silent><Leader>y "yy <Bar> :call system('xclip', @y)<CR>

我选择文本,然后按\y,该文本到达我的本地剪贴板。您可以更改其使用的寄存器,例如c用于带有"yc@c的“剪贴板”。