Vim'de iki dikey açık pencerenin farkını alın


103

İki dosya açtım. Bir sonraki yanında dikey modda açılırlar. Vim'den çıkmadan veya kapatmadan bu iki dosyayı anında ayırt edebilir miyim?

Yanıtlar:


155

Görünen tüm pencerelerde farklılık yaratmaya başlamak için:

:windo diffthis

:diffthisher pencerede yürütülür .

Fark modunu sonlandırmak için:

:diffoff!

( !Markaları diffoff- eğer iyi olurdu geçerli sekmenin tüm pencereleri için geçerli diffthisaynı özelliği vardı, ama öyle değil.)


:windoKomut daha iyi yapar. Teşekkürler. Bunu kolaylaştırmak için haritalayacağım.
Fatih Arslan

1
Bu iyi bir cevap, ancak minibufexplorer penceresinin bu işlemden önce, eğer açılırsa kapatılması gerektiğini unutmayın. Aksi takdirde diff yanlış sonuçlar gösterir.
baldrs

Bir takma ad kullanılabilir :windo difft[this]. Ref::help diff
DmitrySandalov

@FatihArslan,: windo diffthis benim durumumda hiçbir şey yapmıyor, sadece satır numaralarının yanında sol taraftaki gri sütunda bırakıyor. Açık iki farklı Vim dosyam var.
earik87

22

fark etmek istediğiniz pencerelerin her birinde:

:diffthis

Tüm açık pencereleri farklılaştırmak istiyorsanız, şunları yapabilirsiniz:

:windo diffthis

( windokomutu tüm açık pencerelere uygulayacaktır)


7

Önceki cevapları takip ederek,

  • :windo difft(kısaltması diffthis) tüm açık pencerelerde fark modunu başlatır.
  • :windo diffo(kısaltması diffoff) tüm açık pencerelerde fark modunu durdurur.

İşi vimrckolaylaştırmak için aşağıdaki eşlemelerim var :

command! Difft windo diffthis
command! Diffo windo diffoff

3

Önceki cevapların ardından @cxw tarafından sağlanan eşleştirmeyi uyarladım Aşağıdaki eşleme NERDTree'yi otomatik olarak kapatır ve açık pencereleri farklılaştırır. NERDTree'nin yakın olup olmadığı önemli değil, aynı şekilde çalışıyor. Bunu oldukça sık yapıyorum, bu yüzden bana oldukça zaman kazandırdı.

command! Difft NERDTreeClose | windo diffthis
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.