Com uma macro ? Talvez. Com duas macros, claro!
Primeiro, alguma configuração:
:set nrformats=alpha
:let @y="\"a"
E agora alguns loucos Vim registram o vodu:
qzf"l@yyf"Go
Esc "yp
^ A 0"yy$dd
^ O j0q
A estratégia é usar uma macro ( y
) para rastrear qual registro usar em seguida e modificá-lo usando a outra macro.
-
f"l@yyf"
é do original, só que usei@y
no lugar de"a
. Estamos usando a macroy
para digitar"a
em vez de digitá-la diretamente. -
Go
Esc"yp
vai para o final do arquivo, adiciona uma nova linha lá e cola o conteúdo do registroy
. -
^ A incrementa a letra sob o cursor. Se fosse
a
, agora éb
. Nós definimosnrformats=alpha
antes para que isso funcionasse com letras. -
0"yy$
yanks o texto atualizado de volta para o registroy
. -
dd
^ O limpa nossa linha de rascunho e volta para onde estávamos antes, e -
j0
é o resto do seu original.