How to copy from current position to the end of line in vi
I use gvim in windows. How do I copy text from the current pos开发者_如何转开发ition to the end of the line in vi and paste it in another file opened in vi?
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.
A different solution: Dp
and paste it with p
. In fact this first deletes to the end of line and re-pastes it at the same location. Paste it somewhere else with p
.
精彩评论