Une solution invasive minimale pour les paresseux:
Le registre 0contient toujours le dernier coup sec (comme Rafael , alex2k8 et idbrii l' ont déjà mentionné). Malheureusement, la sélection du registre 0tout le temps peut être assez ennuyeuse, donc ce serait bien si elle était putilisée "0par défaut. Ceci peut être réalisé en mettant les lignes suivantes dans votre .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
La première ligne associe chaque ptrait à "0p. Cependant, cela empêche pd'accéder à d'autres registres. Par conséquent, tous les ptraits avec un registre explicitement sélectionné sont mappés à l'expression de ligne de commande équivalente dans la boucle for. La même chose est faite pour P.
De cette façon, le comportement standard est préservé, à l'exception de l'implicite pet des Ptraits, qui utilisent désormais le registre 0par défaut.
Astuce 1: La commande cut est maintenant "0dau lieu de juste d. Mais comme je suis paresseux, c'est beaucoup trop long pour moi;) Par conséquent, j'utilise le mappage suivant:
noremap <LEADER>d "0d
noremap <LEADER>D "0D
La touche de repère est \par défaut, vous pouvez donc facilement couper du texte en tapant \dou \D.
Astuce 2: le délai d'expiration par défaut pour les mappages multi-touches est assez court. Vous voudrez peut-être l'augmenter pour avoir plus de temps lors de la sélection d'un registre. Voir :help timeoutlenpour plus de détails, j'utilise:
set timeout timeoutlen=3000 ttimeoutlen=100