é possível mesmo no vanilla vim, mas a aplicabilidade depende do seu caso de uso, por exemplo. com que frequência será necessário repeti-lo, pois exige mais algumas teclas para torná-lo repetível.
Opção 1: transformá-lo em uma operação no modo de comando
usando a descida de 5 linhas como exemplo, você pode:
- entrar
:norm 5j
, ele moverá o cursor para baixo 5 linhas
- use
@:
para repetir o movimento
:norm
significa normal, qualquer sequência a seguir é considerada como pressionamento de tecla no modo normal
Opção 2: usar macro
qa
(armazene a macro no registro a
, você pode escolher seu próprio registro qb
, como qc
)
5j
q
(terminar a gravação da macro)
@a
para repetir a operação gravada (substitua a
pelo nome do registro que você escolheu, por exemplo @b
, @c
)
A macro requer mais poder espiritual para ser configurada, mas é mais repetível no sentido em que você pode armazenar várias operações em diferentes registros sem ser substituído pelas operações mais recentes.
;
não é novo. É um comando vi padrão. Vi lembra o caráter tipo e alvo (mas argumento não numérico) da últimaf
/F
/t
/T
movimento e;
repete. No entanto, não repete outros movimentos.Você pode selecionar as linhas que deseja alterar e executar o último comando de ponto normal
fonte