¿Cómo puedo hacer que ambas divisiones se deslicen hacia la izquierda o hacia la derecha al mismo tiempo?

16

Quiero abrir dos partes diferentes de un documento en divisiones horizontales (usando :sp) y desplazarlas a la izquierda y a la derecha juntas. Para el desplazamiento vertical, usaría scrollbind. Sin embargo, no estoy seguro de qué usar para el desplazamiento horizontal.

Sé que la capacidad debe estar disponible porque cuando la uso vimdiff, se desplaza horizontalmente en ambos documentos al mismo tiempo.

Christopher Bottoms
fuente

Respuestas:

19

Para desplazar dos ventanas juntas en vim, debe ejecutarse :set scrollbinden cada una de ellas. Como notó, de manera predeterminada, esto solo vincula el desplazamiento vertical. En los documentos para scrollbind, menciona:

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

:help scrolloptrevela que quieres decir :set scrollopt+=horpara habilitar el desplazamiento horizontal.

Si solo desea desplazamiento horizontal (es decir, deshabilite el desplazamiento vertical), entonces también querrá decir :set scollopt-=vero establecer explícitamente scrollopt a través de set scrollopt=horo :set scrollopt=hor,jump.

Matt Boehm
fuente
No se puede desacoplar completamente el desplazamiento. Después de tener: set scrollopt = (igual a nada) aún mover comandos como 'm (saltar para marcar "m") o gg se realizan en mis dos ventanas. Es ubuntu gvim después de hacer una división vertical sin archivo especificado
Juan Lanus
Aparentemente resolví el problema mencionado en el comentario anterior estableciendo: set nocursorbind además de: set scrollopt = (nada)
Juan Lanus
No completamente resuelto. Quedaba otra opción: establecer nodiff. Mi vim pensaba que difería dos vistas del mismo archivo. La opción nodiff eliminó las líneas de trazos que vimdiff usa para sincronizar ambos lados.
Juan Lanus