我想出了两种让剪贴板或多或少工作的方法,但它们都没有完全符合我的要求。我想要的是一种复制和粘贴到剪贴板的方法,但只有当我明确告诉 vim 这样做时。
默认情况下,我可以从系统剪贴板粘贴,使用"*p
,但如果不设置其他选项,我找不到写入它的方法。如果我:set guioptions=a
那么这将允许我使用"+yf)
例如将文本拉到剪贴板中。但是,我更喜欢使用相同的寄存器来读写。据我所知,*
寄存器只读,+
寄存器只写。(除非我设置了它不会写guioptions=a
......它具有自动复制视觉选择的文本的副作用,这不是我想要的。)
似乎更接近于做我想做的事情的解决方案是
:set clipboard=unnamedplus
然而,这个问题是现在未命名的寄存器是我的剪贴板,所以每当我这样做x
或dd
我覆盖我的系统剪贴板时。我可以通过clipboard
在我想使用它之前和之后设置和取消设置来控制它,但这不是最好的解决方案。
有没有一种方法可以将剪贴板设置为等效unnamedplus
于命名寄存器?我试过set clipboard="*
, :set clipboard="*+
, :set clipboard="*plus
, :set clipboard="0
, "0plus
, and "0+
,但都无济于事。我也尝试过省略"
但返回错误。
我正在使用 Vi IMproved 7.3(包括补丁 1-547;由 pkg-vim-maintainers@lists.alioth.debian.org 修改;由 buildd@ 编译)我的操作系统是 Ubuntu 13.04。