vim 和系统剪贴板

gra*_*bow 10 vim clipboard

我可以使用中间按钮或 shift-insert 对文件进行分类、复制和粘贴文本。

如何在 vim 中复制文本并从系统剪贴板粘贴?

mur*_*uru 12

你需要有Vim的与clipboardxtermclipboard功能编译。在Ubuntu中,这些只适用于VIM GUI包(vim-gnomevim-gtkvim-athena等)。

安装其中之一后,您可以复制到(和粘贴)剪贴板寄存器(*+)。来自这篇关于Vi 和 Vim 的非常有用的帖子:

对于基于X11的系统(即Linux和大多数其他类 UNIX系统),有 2 个剪贴板,它们彼此独立:

  • PRIMARY - 这是选择时复制,可以用鼠标中键粘贴。
  • 剪贴板 - 这是用(通常)复制^C,然后用^V(就像 MS Windows 一样)粘贴的。

Vim 有 2 个与这些剪贴板相对应的特殊寄存器:

  • *使用 PRIMARY;记忆:小号焦油是小号选择(复印-ON-小号可选)
  • +使用剪贴板;助记符:CTRL + C(用于通用键绑定)

要复制到寄存器,请在复制命令 ( y)之前加上"寄存器名称(*例如 )。"*y,然后单击鼠标中键进行粘贴,或单击"+yShiftInsert进行粘贴。


小智 5

我遇到问题是因为我的 vim 不支持剪贴板

vim --version | grep clip
-clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      -mouseshape      +startuptime     -xterm_clipboard
Run Code Online (Sandbox Code Playgroud)

我安装了 vim-gnome (支持剪贴板),然后再次检查:

vim --version | grep clipboard
+clipboard       +insert_expand   +path_extra      +user_commands
+emacs_tags      +mouseshape      +startuptime     +xterm_clipboard
Run Code Online (Sandbox Code Playgroud)

现在我可以分别使用“+y”和“+p”进行复制和粘贴。