Yank整个文件

Cha*_*rch 119 vi vim clipboard

我经常在gVim中写一些东西,然后需要将它复制粘贴到另一个应用程序中.

有没有简单的方法来拉动整个文件?我经常这样做

ggVG"+y

(转到顶部,视线模式,转到底部,猛拉)

但是,我错过了一个更好的方法吗?

Luc*_*tte 192

我使用以下指令: :%y+

  • 如果+注册在ubuntu 11.04+中不适合你,请尝试安装gVim(apt-get install vim-gnome).这将在+ vim的终端版本中提供+ clipboard属性 (7认同)
  • 这就是我所寻找的,我永远无法弄清楚如何做到这一点.谢谢. (6认同)
  • 请做什么+好吗? (6认同)
  • 这是与剪贴板相关的寄存器.OP在他的问题中使用的那个.=>`:h:y`,`:h register` (5认同)
  • @VoY:你需要将Clipboard -property编译成Vim才能使这个工作"+剪贴板".这意味着"一切都在外部剪贴板 - 窗口管理器中".这个属性不是事实上的,但它带有一些显然事实上的图形vim,如gVim.请纠正我,如果我错了(只是注意到这个东西,当不得不在Windows gVim中使用yank所以我当然不能完全确定,但我相信这是属性). (4认同)
  • 我曾经做过`gg"+ YG`,但我从不喜欢它,因为我丢失了原来的线路.这是完美的! (2认同)

Ann*_*rom 53

ggyG (转到第一行,猛拉到最后一行)

编辑:啊,系统剪贴板.不完全滚开手指,但是:gg"+yG

  • @Geoyws `"` 表示您想使用寄存器。`"+` 是一个绑定到系统剪贴板的寄存器。`"+yG` 将文件底部的所有内容拖入该寄存器。`:help "+` (2认同)

mou*_*iel 16

旧vi :r filename中的工作解决方案位于新文件中.

  • 虽然这不是问题的答案,但它是_mine_的答案.谢谢. (5认同)
  • 我需要添加一个零来粘贴它在文件的开头:`:0r filename` (2认同)

Gle*_*rry 12

另一种方法是:

ggyG
Run Code Online (Sandbox Code Playgroud)

到顶部,然后猛到底部.


Fra*_*edo 7

ggyG

(转到顶部,猛到底)


Che*_*eng 7

我使用以下指令::%y.

  • ...不在窗口管理器中的不同窗口上。+ 最后将它拉到外部剪贴板(显然是 op 试图做的) (2认同)

小智 5

:0,$ y
Run Code Online (Sandbox Code Playgroud)

我不知道哪种方式更容易。