Bagaimana saya bisa membuat kedua belah untuk menggulir ke kiri atau kanan pada saat yang sama?

16

Saya ingin membuka dua bagian dokumen yang berbeda dalam pemisahan horizontal (menggunakan :sp) dan gulir keduanya ke kiri dan kanan bersamaan. Untuk pengguliran vertikal, Anda akan menggunakan scrollbind. Namun, saya tidak yakin apa yang harus digunakan untuk pengguliran horizontal.

Saya tahu kapabilitas harus tersedia karena ketika saya gunakan vimdiff, itu bergulir secara horizontal di kedua dokumen pada saat yang sama.

Christopher Bottoms
sumber

Jawaban:

19

Untuk menggulirkan dua jendela bersama dalam vim, perlu menjalankan :set scrollbindmasing-masing. Seperti yang Anda catat, secara default, ini hanya mengikat pengguliran vertikal. Dalam dokumen untuk scrollbind, disebutkan:

The behavior of 'scrollbind' can be modified by the 'scrollopt' option.

:help scrolloptmengungkapkan bahwa Anda ingin mengatakan :set scrollopt+=horuntuk mengaktifkan pengguliran horizontal.

Jika Anda hanya ingin pengguliran horizontal (yaitu nonaktifkan pengguliran vertikal), maka Anda juga ingin mengatakan :set scollopt-=veratau secara eksplisit mengatur scrollopt via set scrollopt=horatau :set scrollopt=hor,jump.

Matt Boehm
sumber
Tidak dapat sepenuhnya memutus pengguliran. Setelah: set scrollopt = (tidak sama dengan apa pun) masih memindahkan perintah seperti 'm (lompat ke tanda "m") atau gg dilakukan di kedua jendela saya. Ini ubuntu gvim setelah melakukan: split vertikal tanpa file yang ditentukan
Juan Lanus
Rupanya saya memecahkan masalah yang disebutkan dalam komentar sebelumnya dengan menetapkan: set nocursorbind dan: set scrollopt = (nothing)
Juan Lanus
Tidak sepenuhnya terpecahkan. Pilihan lain yang tersisa,: atur anggukan. Vim saya berpikir bahwa saya berbeda dua pandangan dari file yang sama. Opsi nodiff menghapus semua garis garis yang digunakan vimdiff untuk menyinkronkan kedua sisi.
Juan Lanus