Vim: Replace selection with default buffer without overwriting the buffer

Viewed 9216

Here is my problem:

I am in visual mode.

I select text and copy it to the buffer. ((y)ank)

I select another text which I want to replace and paste the buffer. ((p)aste)

Now the second selection has been replaced in the buffer, however I want the first one to still sit in there.

Any ideas?

2 Answers

While this does not technically answer the question (not using default buffer) it does solve the symptom of the problem so I thought I would still share. I get around this issue with a solution to a different problem.

I have mapped "Copy, paste" (yank, put) from the system clipboard to "Ctrl-Shift-C, Ctrl-Shift-V" (Ctrl-C, Ctrl-V if caps lock is on). This can be used in place of y with the same effect.

If I use the system buffer for copy it does not get overwritten when I paste.

I added this to my .vimrc

vnoremap <C-V> "*p 
vnoremap <C-C> "*y

As a bonus it will give you easy access to the system clipboard.

Related