Yank entire file

Viewed 89982

I often write something in gVim, then need to copy-paste it into another application.

Is there an easy way to yank the entire file? I usually do something like this

ggVG"+y

(Go to top, visual-line mode, go to bottom, yank)

But is there a better way that I'm missing out on?

13 Answers

I use the following instruction: :%y+

ggyG (go to the first line, yank to the last line)

Edit: Ah, system clipboard. Doesn't exactly roll off the fingers, but: gg"+yG

A working solution in old vi is :r filename in the new file.

Another method is this:

ggyG

Go to the top, and yank to the bottom.

:0,$ y

I dunno which way is easier.

Or simply in your .vimrc:

nmap <silent> <F5> ggVG"+y

So you can just use one key :)

Depending on how often you do it, just map a key for this and optionally add to the vimrc

:nnoremap <F5> :%y

or

:nnoremap <leader><whatever> :%y

or whatever key you know is safe and is fastest—then add to a mappings source or whatever. The advantage to this over ggyG is that it's not moving the cursor (faster) and to retain your cursor position you'd have to add a <Ctrl-o><Ctrl-o>

People often forget that commands are session based unless in the vimrc. I often know when I'm going to do a lot of something but don't need it as default and just :[mode]remap <whatever> <whatever>

I can close and re-open vim if I need to.

If <Ctrl-A><Ctrl-C> works for you then you’re using mswin.vim in your source and losing out on the power of increment <Ctrl-a> and decrement <Ctrl-x> operations (among other things). I started in windows and stopped using mswin.vim along time ago. I personally feel it's best to grok Vim the right way and then add in the crutches you really need :P

On Windows I often just do CTRL-A, CTRL-C to copy all to the windows clipboard... Can't get easier than that!

I'm using a standard gvim 7.1 from the website...

(BTW: also works on my mac with MacVim and that funny mac-key+A, mac-key+C)

Related