Skenario: Saya telah membuka Vim dan menempelkan beberapa teks. Saya membuka tab kedua dengan :tabe
dan menempelkan beberapa teks lain di sana.
Sasaran: Saya ingin tab ketiga dengan output yang setara dengan menulis kedua teks ke file dan membukanya vimdiff
.
Yang paling dekat yang bisa saya temukan adalah "membeda-bedakan buffer saat ini terhadap file", tetapi tidak menggunakan diff
dua buffer yang terbuka tetapi belum disimpan.
Jawaban:
Saya sarankan untuk membuka file kedua di tab yang sama daripada yang baru.
Inilah yang biasanya saya lakukan:
The
:vnew
perintah membagi tampilan saat vertikal sehingga Anda dapat membuka file kedua ada. Perintah:diffthis
(atau singkat:difft
:) kemudian diterapkan ke setiap tampilan.sumber
vimdiff file1.txt file2.txt
dan menjatuhkan diri Anda sendiri.:diffthis
. Terima kasih banyak. Terima kasih!edit fileN
bagian tersebut dapat diganti hanya dengan menempelkan dari buffer, yang memungkinkan Anda membedakan dua potongan teks tanpa menempel masing-masing ke dalam file tmp (sesuatu yang memungkinkan Anda melakukannya, tetapi alat visual diff pada Mac kurang). Ini bekerja di MacVim untuk saya di luar kotak.Saya sarankan mencoba : diffthis atau : diffsplit
sumber
:vert diffsplit
membuat tampilan berbeda lebih tradisional daripada tanpa:vert
:set scrollbind
di keduanya.:diffsplit
saya mendapatkan dua buffer yang terhubung.Saat Anda memiliki dua file yang dibuka dalam pemisahan vertikal, jalankan
:windo diffthis
sumber
:diffoff
untuk mematikan mode diffKonten dari semua tab ada di dalam buffer. Lihat buffernya:
Temukan nomor yang tepat untuk konten yang harus berbeda dengan konten tab Anda saat ini.
Buka buffer di dalam tab Anda saat ini (fe buffer number 4)
Atau lakukan untuk tampilan vertikal:
Kemudian Anda dapat mengubah isinya dengan sederhana
Jika Anda telah menyelesaikan analisis diff, Anda dapat memasukkan:
sumber