Come posso centrare la linea corrente sullo schermo?


23

C'è un modo per centrare la linea che sto modificando sullo schermo? Questo a volte è necessario per vedere un po 'più di contesto sopra e sotto la riga corrente.

Risposte:


28

I comandi z.e zzsaranno più recenti sulla linea su cui si trova il cursore. z.sposta anche il cursore sul primo carattere non bianco nella riga, mentre zzmantiene il cursore dov'è.

Esistono comandi simili per la parte superiore ( z<CR>/ zt) e inferiore ( z-/ zb) della finestra.

Le versioni di questi comandi che terminano con una lettera mantengono la colonna del cursore, mentre quelle che terminano con la punteggiatura spostano il cursore.


6

Digita zzper centrare la linea corrente nella schermata:

inserisci qui la descrizione dell'immagine


Perfezionare! Ho aggiunto questo al mio autocmd BufReadPost, quindi riprendo la modifica con la linea del cursore ripristinata e centrata sullo schermo:au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | "normal! g'\"zz"
John P,

Voto per l'animazione :-)

2

Sì, in modalità normale è possibile utilizzare zzper farlo. Ma come i documenti anticipano, fai attenzione con capslock poiché ZZscriverà il buffer su file ed esci.


Per qualsiasi motivo questo è diventato un enorme punto di contesa su un altro thread SO / SE ... il consenso sembrava essere che dovresti tenere premuto il tasto Maiusc indefinitamente secondo necessità e rimappare il tasto BLOC MAIUSC a livello di sistema per rimuovere la tentazione, et voilà , non più chiusure maiuscole. Altrimenti è colpa tua. Immagino che non abbiano mai avuto a che fare con le macro del preprocessore ...
John P,

1

In modalità normale, zzsposta la linea attualmente sotto il cursore al centro dello schermo.

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.