2013-08-22 21 views
1

寄存器0 Vim應該包含最後一個yank命令的結果(y)。從默認寄存器(""如何使Vim粘貼到總是從寄存器0粘貼,除非它被指定

現在,代替p粘貼,我想p從除非指定的寄存器的寄存器0粘貼(通過「+ P,例如)。

我怎樣才能做到這在我的.vimrc

我試過這樣:

xnoremap p "'v:register'p 

但我不知道如何做「使用指定的註冊,否則零」部分。

+0

怎麼樣如發現'nnoremap p「0p'這樣,你可以按'p,」+ p ...'以vim的默認方式粘貼。並按下' p'來粘貼你的'0'寄存器。你可以嗎? – Kent

+0

你可以做到這一點,但默認情況下從寄存器0粘貼是可取的。 – garbagecollector

回答

1

here

:nnoremap <expr> p (v:register ==# '"' ? '"0' : '') . 'p' 
:nnoremap <expr> P (v:register ==# '"' ? '"0' : '') . 'P' 
:xnoremap <expr> p (v:register ==# '"' ? '"0' : '') . 'p' 
:xnoremap <expr> P (v:register ==# '"' ? '"0' : '') . 'P'