How to copy from current position to the end of line in vi
I use gvim in windows. How to copy text from current position to the end of line in vi and paste it in another file opened in vi. I googled it but cant find any solution for this. Appreciate any help on this. Thank you.
The normal-mode command to move to the end of the line is $
.
You can copy to the end of the line with y$
and paste with p
.
To copy/paste between different instances, you can use the system clipboard by selecting the *
register, so the commands become "*y$
for copying and "*p
for pasting.
$
move-to-linebreak
$
y$
yank-to-linebreak
y,$
"*y$
select clipboard-register yank-to-linebreak
",*,y,$
"*p
select clipboard-register paste
",*,p
Check :h registers
for more information.
If you don't want to include the line break with the yank, you can use yg_
. (Or in your case, "*yg_
)
Basically, just recognize there's a difference between $
and g_
movement-wise. It's helped me on numerous occasions.
Add this line to your .vimrc
" Make Y yank till end of line
nnoremap Y y$
More at my vimrc.