11

При использовании :set wrap в vi/vim содержимое всей перенесенной строки помещается в буфер отображения при перемещении курсора на новую строку, даже при навигации по файлу по отображаемой строке (gj/gk), в отличие от реального линия (к / к). Например, если строка обернута над 5 строками экрана и в настоящее время находится за пределами буфера дисплея, буфер переместится на 5 строк при навигации по этой строке, чтобы заставить всю строку поместиться на экране. Есть ли способ отключить это поведение? Обратите внимание, что set display+=lastline позволит отображать частичные строки, когда обернутая строка будет вытеснена с экрана путем перехода от линии, но это не устраняет скачки буфера, возникающие при переходе к строке, которая изначально была вне буфера ,

Пояснение: в случае, если вышеприведенное описание является туманным, суть в том, что я хотел бы иметь возможность плавной прокрутки в vim с включенным переносом строк, чтобы строки частично отображались за пределами экрана, а не обязательно отображались полностью.

2 ответа2

1

Не полный ответ, но, возможно, привести. Есть опция scroll . Справка для этого параметра гласит, среди прочего:

{Vi немного отличается: 'scroll' дает количество строк экрана вместо строк файла, имеет значение при переносе строк}

0

в обычном режиме вы можете перемещаться между отображаемыми частями обернутой строки, используя gk и gj (g<up> или g<down>). Эта вики-страница Vim объясняет, как изменить поведение навсегда.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .