Veja a diferença de duas janelas verticais abertas no Vim

102

Tenho dois arquivos abertos. Eles são abertos no modo vertical, ao lado do próximo. Posso diferenciar instantaneamente esses dois arquivos sem sair ou fechar o Vim?

Fatih Arslan
fonte

Respostas:

154

Para começar a diferenciar em todas as janelas visíveis:

:windo diffthis

que é executado :diffthisem cada janela.

Para encerrar o modo diff:

:diffoff!

(As !marcas se diffoffaplicam a todas as janelas da guia atual - seria bom se diffthistivesse o mesmo recurso, mas não tem.)

Nefrubyr
fonte
O :windocomando o torna ainda melhor. Obrigado. Vou mapear para tornar mais fácil.
Fatih Arslan
1
Essa é uma boa resposta, mas observe que a janela do minibufexplorer deve ser fechada antes desta operação, se aberta. Caso contrário, o diff mostra resultados incorretos.
baldrs
Pode-se usar um alias :windo difft[this]. Ref::help diff
DmitrySandalov
@FatihArslan,: windo diffthis não faz nada no meu caso, apenas deixando no lado esquerdo a coluna cinza ao lado dos números das linhas. Tenho dois arquivos Vim diferentes abertos.
earik87
22

em cada uma das janelas que você deseja diferenciar tipo:

:diffthis

Se você quiser diferenciar todas as janelas abertas, pode fazer:

:windo diffthis

( windoaplicará o comando a todas as janelas abertas)

Nathan Fellman
fonte
6

Seguindo as respostas anteriores,

  • :windo difft(abreviação de diffthis) iniciará o modo diff em todas as janelas abertas.
  • :windo diffo(abreviação de diffoff) interromperá o modo diff em todas as janelas abertas.

Tenho os seguintes mapeamentos em meu vimrcpara torná-lo mais fácil:

command! Difft windo diffthis
command! Diffo windo diffoff
cxw
fonte
3

Seguindo as respostas anteriores, adaptei o mapeamento fornecido por @cxw O mapeamento a seguir fecha automaticamente o NERDTree e diferencia as janelas abertas. Não importa se o NERDTree está próximo, funciona da mesma maneira. Eu faço isso com bastante frequência, então me economizou algum tempo.

command! Difft NERDTreeClose | windo diffthis
Jordi Freixa
fonte