O poder do global funcionará aqui:
:g/^/exe "normal ddggP"
Ou, mais simplesmente (obrigado @tommcdo)
:g/^/move 0
A primeira corresponderá a todas as linhas e, para cada linha, exclua-a e cole-a na parte superior do arquivo. À medida que se move pelo arquivo, ele reverte o texto.
O segundo corresponde de maneira semelhante a todas as linhas e a move para a parte superior do arquivo.
Nota: Ambos funcionam em todo o arquivo e não se aplicarão corretamente à reversão de um subconjunto das linhas. Veja a resposta de Ingo Karkat para uma solução que funciona dentro de um intervalo.
Descrição:
gcomando global
/^/corresponde a qualquer linha que tenha um início (ou seja, todas as linhas)
exeexecute a seguinte sequência de caracteres
"normalexecutar comandos no modo normal
ddexcluir linha
ggmover para o topo da
Ppasta do arquivo acima da posição atual
move 0 move a linha atual para abaixo da linha 0 (que a coloca na posição 1 ou na primeira linha do arquivo)