Vim'deki iki dosyayı karşılaştırma


63

Vim'de iki dosyayı yan yana görüntülemek mümkün mü? Öyleyse, editörümü bunu yapacak şekilde nasıl ayarlayabilirim ve diffVim'deki iki dosya arasında bir yol var mı?

:nextVe :prevemirlerinin farkındayım , ama peşinde olduğum şey bu değil. İki dosyayı birbiri ardına görüntülemek gerçekten güzel olurdu.

Yanıtlar:


43

Yan yana görünümü açın:

Ctrl+w v

Aralarındaki değişim:

Ctrl+w h or l

Ödemeye vimdiff bir fark benzeri bir görünüm istiyorsanız, komutu, vim paketinin parçası:

vimdiff file1.txt file2.txt

2
İki pencere arasında kaydırmayı kilitlemenin bir yolu var mı?
Zaid


1
Genellikle komut satırında "diff file1 file2" kullanıyorum.
djangofan

2
@ Zaid Kullanımı vimdiff file1.txt file2.txt(aşağıya bakın)
Eduardo Cuomo

42

Ayrıca vim'i bölünmüş ekran modunda da açabilirsiniz -O: -

vim -O file1 [file2 ...]

Daha sonra diff modunu açmak için :diffthis, her bölmede komutu çalıştırmanız gerekir .

Başka bir kullanım durumu senaryosu, zaten bir dosyayı vim'de açmışsanız ve açmak ve başkalarıyla karşılaştırmak istemenizdir. Sonra aşağıdaki vim komutlarını kullanabilirsiniz: -

: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)

Daha sonra her bölmede diff modunu vim komutuyla kapatabilirsiniz :diffoff.

EDIT
Ve bahsedilmeyen diğer standart: -

vim -d file1 [file2 ...]

Bu vimdiffdoğrudan çağrıya eşdeğerdir .


11
:windo :diffthisSon üç komut yerine kullanılabilir.
Bernhard

2

Ya da ilk dosyayı VIM'de açıp :vert diffsplit file2 :vertekranı dikey olarak bölmesini sağlar.

diffsplit bir fark yapar ve dosyaları böler ve kaydırır onları kilitler.

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.