Tembel olanlar için minimal invaziv bir çözüm:
Kayıt 0her zaman son yank içerir ( Rafael , alex2k8 ve idbrii daha önce de belirtildiği gibi). Ne yazık ki 0her zaman kayıt seçmek oldukça sinir bozucu olabilir, bu yüzden varsayılan olarak pkullanırsa iyi olurdu "0. Bu, aşağıdaki satırları bilgisayarınıza koyarak elde edilebilir .vimrc:
noremap p "0p
noremap P "0P
for s:i in ['"','*','+','-','.',':','%','/','=','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
execute 'noremap "'.s:i.'p "'.s:i.'p'
execute 'noremap "'.s:i.'P "'.s:i.'P'
endfor
İlk satır her pkonturu eşleştirir "0p. Ancak bu, pdiğer kayıtlara erişilmesini önler . Bu nedenle p, açıkça seçilmiş bir kaydı olan tüm konturlar for-loop içindeki eşdeğer komut satırı ifadesine eşlenir. Aynı şey için de yapılır P.
Bu yolla, şimdi kayıt kullanan örtük pve Pkonturlar dışında standart davranış korunur0 varsayılan olarak .
İpucu 1: Kesme komutu artık "0dsadece yerine d. Ama tembel olduğum için bu benim için çok uzun;) Bu nedenle aşağıdaki eşlemeyi kullanıyorum:
noremap <LEADER>d "0d
noremap <LEADER>D "0D
Lider tuşu \varsayılan olarak, böylece \dveya yazarak metni kolayca kesebilirsiniz \D.
İpucu 2: Çok tuşlu eşlemeler için varsayılan zaman aşımı süresi oldukça kısadır. Bir kayıt seçerken bu süreyi uzatmak isteyebilirsiniz. Ayrıntılar :help timeoutleniçin bakın, kullanıyorum:
set timeout timeoutlen=3000 ttimeoutlen=100