Vim 的剪贴板 "unnamed" 和 "unnamedplus" 设置有什么区别?

What is difference between Vim's clipboard "unnamed" and "unnamedplus" settings?

这两个设置有什么区别?

set clipboard=unnamed
set clipboard=unnamedplus

为了拥有多平台 .vimrc,我应该使用哪个?

在 Mac OS X 和 Windows 上,*+ 寄存器都指向系统剪贴板,因此 unnamedunnamedplus效果相同:未命名寄存器与系统剪贴板同步。

在 Linux 上,您实际上有两个剪贴板:一个与另一个 OS 中的几乎相同(CtrlCCtrlV在其他程序中,映射到Vim中的寄存器+),另一个是 "selection" 剪贴板(映射到 Vim 中的寄存器 *)。

在 Linux、Windows 和 Mac 上仅使用 unnamedplus OS X 允许您:

  • CtrlC 在所有三个平台上输入 Vim 和 p
  • 在所有三个平台的其他程序中使用 yCtrlV 在 Vim 中进行抽取。

如果您还想使用 Linux 的 "selection" 剪贴板,您还需要 unnamed.

这里是一个跨平台的值:

set clipboard^=unnamed,unnamedplus

参考:

:h 'clipboard'
(and follow the tags)