Para fazer isso da maneira VIM, você usa intencionalmente os registros yank, delete e outros.
Register "0
é o registro de arranco. Qualquer coisa que você puxar será colocada aqui, mas as exclusões nunca tocam em registrar "0
.
Então, no seu exemplo, você acabou de arrancar uma palavra. Para substituir uma palavra pelo que você acabou de puxar, aproveite as exclusões que nunca tocam no registro de puxões. Então vá para a palavra alvo, apague-a com dw
e cole a partir do seu registro yank com "0p
, ou melhor ainda, cw
então ^R0
(que é repetível).
Um oposto ao registro de arranco é o registro de pequenas exclusões "-
. Qualquer pequena exclusão ou remoção de alteração é colocada aqui, mas os puxões nunca se tocam "-
. Uma exclusão conta como pequena se for menor que uma linha completa.
Registradores "1
- "9
são os registros do histórico de exclusão. Com "1
a exclusão da última exclusão grande ou remoção de alterações e "9
a exclusão da exclusão grande mais antiga ou remoção de alterações. Somente exclusões que não são pequenas, ou seja, exclusões de uma linha ou mais, são pressionadas para "1
- "9
.
Para qualquer operação que altera um registro, uma cópia também é sempre colocada no padrão, também conhecido como registro sem nome ""
. Este é o registro usado quando você não nomeia explicitamente um registro.
Register "_
é o registro do buraco negro e está sempre vazio. Se você excluir, nada em nenhum registro será alterado, nem mesmo o ""
registro padrão ou o próprio buraco negro. O texto removido desapareceu completamente, além do histórico de desfazer. Recolher ou colar a partir do registro do buraco negro não faz essencialmente nada.
O registro do buraco negro "_
permite fazer coisas como primeiro uma exclusão pequena, depois várias outras exclusões "_
sem alterar seu registro de exclusões pequenas "-
e colar sua primeira exclusão pequena.
Outros registradores são o último registro inserido ".
, o nome do arquivo "%
e "#
, o comando command ":
, search search "/
e expression expression "=
.
Você pode obter uma lista de todos esses registros e seus conteúdos pelo comando :register
. Esse comando é muito útil para experimentar e aprender o que acaba onde.
vep
.