Respostas:
:%s/\n\(\(A\.$\)\@!.*\)/\1/
Substitua uma correspondência de padrão:
um grupo contendo
A.
diretamente seguido pelo fim de linha, então com:
e fazer isso globalmente.
:help \@!
no Vim para mais informações sobre essa parte. Caso contrário, é direto, espero, com a minha explicação. Um problema com sua abordagem é que se " A.
"ocorre no texto, embora não como uma linha de marcador isolada, ele será dividido como se fosse originalmente um marcador. Na prática, pode não ser um problema (não sei como é o seu arquivo" real ") , mas genericamente pode causar um comportamento indesejado, se alguém não está ciente disso.
:%s///
Sintaxe: é uma sintaxe de "pesquisa e substituição" no Vim. :
inicia o comando %
especifica o buffer inteiro como o intervalo, s
inicia uma substituição. /
é o delimitador de padrão (qualquer outro caractere pode ser usado, mas /
é "padrão"). O primeiro /
inicia o padrão de pesquisa, o segundo o padrão de substituição e o terceiro termina. Modificadores à direita estão disponíveis para especificar a insensibilidade a maiúsculas e minúsculas, etc. \1
representa o grupo capturado no padrão de pesquisa. :%s/foo/bar/
substitui foo
com bar
no arquivo.
:%s/^A\.//
. O método na resposta não captura o ^A\.
padrões próprios (e não a sua ausência), por isso não pode modificar essas cadeias de uma forma óbvia.
Isso também funciona (quando a primeira linha começa com A.
)
:v/^A/-1j!