Vim Tips Wiki

Changes: Transfer text between two Vim instances


Back to page

(Remove html character entities)
(Adjust previous/next navigation + minor manual clean)
Line 2: Line 2:
|created=April 20, 2001
|author=Douglas Potts
|author=Douglas Potts

Latest revision as of 02:10, May 16, 2012

Tip 66 Printable Monobook Previous Next

created 2001 · complexity basic · author Douglas Potts · version 5.7

This one is a one of my favorites from Dr. Chip, and I haven't seen it come across Vim tips yet.

Can use either visual, or marking to denote the text.

" transfer/read and write one block of text between vim sessions
" Usage:
" 'from' session:
" ma
" move to end-of-block
" xw
" 'to' session:
" move to where I want block inserted
" xr
if has("unix")
  nmap xr :r $HOME/.vimxfer<CR>
  nmap xw :'a,.w! $HOME/.vimxfer<CR>
  vmap xr c<Esc>:r $HOME/.vimxfer<CR>
  vmap xw :w! $HOME/.vimxfer<CR>
  nmap xr :r c:/.vimxfer<CR>
  nmap xw :'a,.w! c:/.vimxfer<CR>
  vmap xr c<Esc>:r c:/.vimxfer<CR>
  vmap xw :w! c:/.vimxfer<CR>


See also VimTip71.

Here is much simple version. Tested on Unix only.

"Copy and paste between different Vim sessions
nmap _Y :!echo ""> ~/.vi_tmp<CR><CR>:w! ~/.vi_tmp<CR>
vmap _Y :w! ~/.vi_tmp<CR>
nmap _P :r ~/.vi_tmp<CR>

Select your text, press CTRL+_Y to copy, then in another (or even the same) Vim session press CTRL+_P to paste

VimTip21 seems to solve all of these issues.

Around Wikia's network

Random Wiki