我想知道,如何启用所选文字的自动复制到'+' 在Ubuntu注册(在应用程序之间共享剪贴板)? 在win XP上,我有
设置guioptions + = a
它的工作完美,但在Ubuntu 11.10中却没有。
另外,我试过
设置clipboard = unnamedplus,unnamed,autoselect,exclude:cons \ | linux。
但没有成功。
请不要提供像这样的手动点击解决方案 vmap“+ y和鼠标复制/粘贴。
测试用例(使用“behave mswin”选项):
打开gvim
shift - v ,移动光标和 Esc (在可视模式下选择行)
转到firefox并点击 ctrl - v 或 ctrl - 插入以粘贴文字< / p>
解决方案
在这个thread中,问题解决了。
你需要从Christian Brabandt那里申请补丁。
另外,如果在ubuntu中重新编译后遇到使用 shift - insert 粘贴的问题,可以在vimrc中添加:
if has("gui_running")
map <silent> <S-Insert> "+p
cmap <S-Insert> <C-R>+
imap <silent> <S-Insert> <Esc>"+pa
endif
答案 0 :(得分:0)
"+y
是否有效?这不是一个建议:如果此命令不起作用,您可能会遇到一些阻止简单解决方案的潜在问题。所以它需要首先检查,即使它听起来很愚蠢。
set clipboard+=unnamedplus
足够如果您的Vim版本支持。我的是7.3.35,它不起作用(虽然Vim没有抱怨)。
我不确切知道哪个补丁引入了unnamedplus
,但您可以使用:help 'clipboard'
(使用单引号)来获取可用选项列表。如果列出了unnamedplus
,则上面的代码段会解决您的问题。如果它不在那里(显然)你将无法使用它:时间重新评估你的“不提供像vmap "+y
手动点击解决方案和鼠标复制/粘贴”要求或编译更新的版本Vim。
答案 1 :(得分:0)
尝试以下操作:
set guioptions+=P
说明:
TLDR:a
将文本放入"*
寄存器中。 P
将文本放入"+
寄存器
来自:help guioptions
'a'自动选择:如果存在,则每当启动VISUAL模式时, 或可视区域扩展,Vim试图成为该所有者。 窗口系统的全局选择。这意味着视觉上 突出显示的文本可用于粘贴到其他应用程序中 以及进入Vim本身。当可视模式结束时,可能是由于 对文本的操作,或者应用程序要粘贴文本时 选择,突出显示的文本将自动拉入“ * 选择寄存器。因此,该选择仍可用于 VISUAL模式结束后粘贴到其他应用程序中。 如果不存在,则除非Vim明确指示,否则Vim不会成为窗口系统全局选择的所有者。 对“ *”寄存器执行抽出或删除操作。同样适用于 无模式的选择。
'P'类似于自动选择,但使用“ +寄存器”而不是“ *” 注册。