Подтвердить что ты не робот

Автоматически прокручивать экран в vim, когда он находится рядом сверху/снизу?

Я хочу иметь более умную прокрутку экрана при редактировании. Когда я достигаю внутри X количества строк из верхней/нижней части экрана, я бы хотел, чтобы он прокручивал экран, когда я продолжаю перемещать курсор (так что я всегда могу видеть, как минимум, строки X ниже или выше).

Я знаю, что ctrl-y и ctrl-e будут прокручиваться, но есть ли способ, которым я могу обнаружить vim, когда я нажимаю j или k, насколько я далеко от верхней/нижней части экрана, чтобы он мог переместить экран по мере необходимости?  Я также знаю, что zz сосредоточится на текущем местоположении курсора, но я бы хотел, чтобы там была область, в которой она не прокручивается.

Спасибо.

4b9b3361

Ответ 1

Из моего .vimrc:

set scrolloff=3 " Keep 3 lines below and above the cursor

Ответ 2

Вы также можете посмотреть scrolljump, который задает количество прокручиваемых строк при попадании "границы", заданной scrolljump.

Ответ 3

Попробуйте scrolloff=9999. После того, как курсор достигнет середины экрана, нажатие j перемещает экран вверх на один, вместо перемещения курсора вниз. Отлично работает, когда вы привыкнете к нему.