Як центрувати поточний рядок на екрані?


23

Чи є спосіб центрувати рядок, який я редагую, на екрані? Іноді це потрібно, щоб побачити трохи більше контексту над і під поточним рядком.

Відповіді:


28

Команди z.та zzпереглянуть рядок, на якому знаходиться курсор. z.також переміщує курсор до першого символу без пробілу в рядку, zzзберігаючи курсор там, де він є.

Існують подібні команди для верхнього ( z<CR>/ zt) та нижнього ( z-/ zb) вікна.

Версії цих команд, які закінчуються літерою, зберігають стовпчик курсора, а ті, що закінчуються пунктуаційними знаками, переміщують курсор.


6

Введіть zzдля центру поточний рядок на екрані:

введіть тут опис зображення


Ідеально! Я додав це до свого BufReadPost autocmd, тому я відновив редагування з відновленою лінією курсору та зосереджено на екрані:au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | "normal! g'\"zz"
Джон P

Оновлення для анімації :-)

2

Так, у звичайному режимі ви можете використовувати zzце. Але, як попереджають документи , будьте обережні з caplock, оскільки ZZбудете писати буфер для подачі та виходу.


З будь-якої причини це стало величезною суперечливістю в іншому потоці SO / SE ... Здавалося, що ви повинні утримувати зсув на невизначений термін на необхідність та переставляти клавішу блокування ковпачків на системному рівні, щоб зняти спокусу та ін. , більше немає ковпачків. Інакше це ваша вина. Я здогадуюсь, що їм ніколи не доводилося мати справу з макросами препроцесора ...
Джон П

1

У звичайному режимі zzбуде переміщена лінія, що знаходиться під курсором, до центру екрана.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.