是否有任何方法复制所有行从打开的文件到VI编辑器剪贴板。我试过yG,但它没有使用剪贴板来存储这些行。

那么这可能吗?


当前回答

好吧,所有这些方法都很有趣,但是作为一个懒惰的程序员,我使用yank所有行通过使用数字+ y的组合

例如,你有一个总共78行的源代码文件,你可以这样做:

Gg获取第一行的游标 插入78 + y—>它在你的光标和当前行下面拉78行

其他回答

:%y a把所有的内容放到vim的缓冲区中, 在命令模式下按下p键将会在你的光标当前所在的行之后粘贴被拖拽的内容。

(回复@rshdev,并避免在OP的注释中使用@nelstrom +xterm_clipboard重新编译vim)

在Ubuntu 11上有一个叫xclip的程序,它的工作原理类似于putclip:

:%!xclip -sel clip
u

默认情况下不会安装。安装方法:

sudo apt-get install xclip

Use:

:%y+

扯断所有的线。

解释:

%以引用下一个命令来处理所有行 Y来拉这些线 +复制到系统剪贴板

注意:在Windows中,+和*是等价的,请看这个答案。

我尝试了上面人们提到的一些命令。没有工作。 然后我找到了其中最简单的一个。

步骤1:vi <filename> 第二步:右键单击Putty窗口的标题栏 步骤3:选择“清除屏幕”(以避免复制SSH会话的其余部分) 第四步:再次右键单击并选择“复制所有到剪贴板”。

Ubuntu 12

你可以尝试安装vim-gnome包:

sudo apt-get install vim-gnome

我尝试了一下,因为vim——version告诉我它将禁用xterm_clipboard标志(由-指示),这是使用剪贴板功能所必需的。

在Ubuntu 12上安装vim-gnome包的>也安装了一个基于控制台的vim版本,该版本启用了这个选项(xterm_clipboard标志前的+表示)

在Arch Linux上

出于同样的原因,您可以安装vim-clipboard。

如果运行neovim,则应该安装xclip(参见help clipboard-tool)