Vim'de farklı iki sekme


121

Senaryo: Vim'i açtım ve bazı metinleri yapıştırdım. İle ikinci bir sekme açıyorum :tabeve oraya başka bir metin yapıştırıyorum.

Hedef: Her iki metni de dosyalara yazıp açmaya eşdeğer çıktıya sahip üçüncü bir sekme istiyorum vimdiff.

En yakın bulabildiğim, "geçerli arabelleği bir dosyaya göre farklılaştır", ancak diffaçık ancak kaydedilmemiş iki arabelleği değil.


1
tabe komutu nedir?
hhafez

1
@hhafez - yeni bir sekmede yeni bir tampon aç
Rook

3
Kısaltması: tabedit, aka: tabnew.
TSomKes

Yanıtlar:


188

İkinci dosyayı yenisi yerine aynı sekmede açmanızı öneririm.

İşte genellikle yaptığım şey:

:edit file1
:diffthis
:vnew
:edit file2
:diffthis

:vnewOrada ikinci dosyayı açabilir, böylece komut dikey mevcut görünümü böler. :diffthis(Veya kısa: :difft) komutu daha sonra her bir görünümünde uygulanır.


1
Fwiw, MacVim varsayılan olarak buna sahip gibi görünmüyor, ancak bence terminale gidip yazıp kendinizi kapatabilmelisiniz vimdiff file1.txt file2.txt.
ruffin

3
Bu harika. edit fileNParçalar sadece bir tmp dosyasına (zihin birleştirme yapmanız sağlar, ancak Mac üzerinde görsel fark araçları eksik olduğunu şey) her yapıştırarak olmadan iki metin parçalarını diff sağlayan tampon, gelen yapıştırarak ile değiştirilebilir. Benim için kutudan çıktığında MacVim'de çalıştı.
yshavit

38

10
:vert diffsplitOlmadan olduğundan daha geleneksel bir farklı görünüm sağlar:vert
ephemient

7
Şunları yapabilirsiniz: varsayılan yapmak için diffopt + = vertical'ı ayarlayabilirsiniz: vert.
graywh

3
Ayrıca, iki pencereyi aynı anda kaydırmak için: :set scrollbindher ikisinde de.
Dmytro Sirenko

Soruda sorulduğu gibi sekmelere ihtiyacım varsa çalışmıyor. Eğer yaparsam :diffsplitbirbirine bağlı iki tampon alırım.
erik

25

Dikey bölmede açılmış iki dosyanız olduğunda,

:windo diffthis


8
:diffofffark modunu kapatmak için kullanın
AB

2
Ancak iki sekmeden dikey bölüme nasıl geçebilirim?
erik

1

Tüm sekmelerin içeriği tamponların içindedir. Tamponlara bakın:

:buffers

Mevcut sekme içeriğinizden farklı olması gereken içerik için doğru numarayı bulun.

Geçerli sekmenizdeki arabelleği açın (fe arabellek numarası 4)

:sb 4

Veya dikey görünüm için yapın:

:vertical sb 4

Ardından içeriği basitçe ayırt edebilirsiniz

:windo diffthis

Fark analizini bitirdiyseniz şunları girebilirsiniz:

:windo diffoff
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.