Scorrendo contemporaneamente entrambe le parti di una finestra divisa in Vim


119

È possibile scorrere le parti sinistra e destra di una finestra divisa verticalmente in Vim? Ho due file che vorrei confrontare approssimativamente. Ogni riga di questi file sembra quasi la stessa.

Risposte:


90

Vedere la documentazione per l'associazione a scorrimento . Dovrai impostarlo per ogni finestra che desideri vincolare (ad esempio un minimo di 2)

Se stai confrontando 2 file, tuttavia, vimdiff potrebbe essere più utile


4
Vimdiff ... dove sei stato tutta la mia vita?
— hoosierEE

@BrianAgnew ci dia un comando per copiare, amico. Rende le nostre vite più facili. Grazie per vimdiff, però!
— Nathan

184

Vai alla prima divisione e digita

:set scrollbind

Vai a quello successivo ( ctrl+ w) e fai lo stesso.

Disabilitare:

:set noscrollbind

Per maggiori informazioni, controlla la documentazione per l'associazione di scorrimento: http://vimdoc.sourceforge.net/htmldoc/scroll.html#scroll-binding


58
Se hai tutti i file aperti, puoi anche :windo set scrollbindimpostarlo per tutte le suddivisioni contemporaneamente.
— Bernhard

54
:windo set scrollbind

imposterà lo scrollbind in tutte le finestre.


3
Se ti nmap <F5> :windo set scrollbind!<cr>accorgi di farlo spesso , potrebbe essere utile avere qualcosa come attivare lo scrollbind in tutte le finestre aperte.
— jlund3

Non so perché, ma scrollbind!non ha funzionato per me, ma invscrollbindha funzionato. Una mappatura SUPER. Grazie!
— UlfR

11

Buongiorno,

Hai provato a usare vimdiff sui due file?

vimdiff file1 file2

Questo ti darà l'associazione di scorrimento per impostazione predefinita.


1
il problema è che tutte le linee sono diverse, comincia a essere un disastro .. Le linee sono quasi le stesse ma possono differire di un carattere ... e non voglio che la mia vista sia troppo disturbata .. grazie però.
— LB40

1
@ LB40 si potrebbe considerare tweaking tuo colorscheme, vedere stackoverflow.com/questions/24666558/...
— qneill

8

Dalla riga di comando:

vim -O file1 file2 -c 'windo set scb!'

-O = aperto fianco a fianco.

-c = ciò che segue tra virgolette viene trattato come un'opzione di vim.

'windo' = si applica a tutti i pannelli.

'scb' = scorciatoia per scrollbind. Salva un po 'di digitazione, ma i due sono intercambiabili.

'!' = attiva / disattiva. In questo modo puoi utilizzare lo stesso comando per disattivarlo in seguito, se lo desideri.


5

Per i posteri, ecco cosa dovevo fare, dato che non ho iniziato con vimdiff.

Ho caricato un file. Quindi: vsp per caricare l'altro.

Sono file abbastanza diversi, ma volevo vedere cosa c'è in comune tra di loro.

Così...

:set diff
:set diffopt=iwhite
:set scrollbind

3
Puoi ottenere tutti quelli per un dato buffer (: diff,: diffopt,: scrollbind) in un comando con: diffthis in ciascuno dei buffer
— qneill
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.