É possível visualizar dois arquivos lado a lado no Vim? Se sim, como posso configurar meu editor para fazer isso e existe uma maneira de diff
entre os dois arquivos no Vim?
Estou ciente do :next
e :prev
comandos, mas não é isso que eu estou procurando. Seria realmente bom ver os dois arquivos em conjunto.
Abra a vista lado a lado:
Ctrl+w v
Mudar entre eles:
Ctrl+w h or l
Faça o checkout do comando vimdiff, parte do pacote vim, se você deseja uma visualização semelhante a diff:
vimdiff file1.txt file2.txt
Você também pode abrir o vim no modo de tela dividida, com a opção -O
: -
vim -O file1 [file2 ...]
Para ativar o modo diff, você precisa executar o comando :diffthis
Em cada painel.
Outro cenário de caso de uso é se você já tem um arquivo aberto no vim e deseja abrir e compará-lo com outro. Em seguida, você pode usar os seguintes comandos do vim: -
:vs otherfile (open otherfile in vertical split screen)
:diffthis (turn on diff mode in original file)
Ctrl+w l (swap to newly opened file)
:diffthis (turn on diff mode in opened file)
Você pode desativar o modo diff em cada painel com o comando vim :diffoff
.
EDITAR
E o outro padrão que não foi mencionado: -
vim -d file1 [file2 ...]
Isso é equivalente a chamar vimdiff
diretamente.
Você também pode usar o comando vimdiff
.
Exemplo:
vimdiff file1.txt file2.txt
Ou simplesmente abra o primeiro arquivo no VIM e, em seguida, :vert diffsplit file2 :vert
faz com que a tela seja dividida verticalmente.
diffsplit
faz uma comparação e divide os arquivos e rola os bloqueios.