Problemy z przewijaniem, gdy jest ustawiona opcja „zawijania”

10

Zajmuję się tym problemem za każdym razem, gdy wrapopcja jest aktywna (w moim przypadku za każdym razem, gdy pracuję z plikami przeceny).

To, co się dzieje, polega na tym, że podczas przewijania bufora w górę i w dół za pomocą ji k, owinięte linie tekstu (wizualnie tworzą akapit) na skraju górnego i dolnego końca nie przewijają się płynnie (tj. Jeden po drugim) poza ekran. Zamiast tego całe akapity znikają i pojawiają się nagle z widoku, co powoduje dezorientację i irytujący efekt.

Myślę, że GIF lepiej wyjaśni, co się stanie. Tutaj naciskam tylko kkilkakrotnie, aby przewijać w górę. Obserwuj akapit w dolnej części!

ugh

Przyzwyczaiłem się do tego zachowania, ponieważ nie sądziłem, że można to naprawić, ale potem zdałem sobie sprawę, że nie dzieje się tak z liniami fizycznymi i wraprozbrojeniem.

Czy istnieje sposób, aby powiedzieć Vimowi, aby przewinął poza ekran liniami wizualnymi zamiast fizycznymi?

ps: Tak, zmapowałem moje ji kdo gji gk.

zool
źródło
To może ci pomóc: vi.stackexchange.com/questions/11315/…
stackzebra

Odpowiedzi:

5

Jest to problem, o który często pytano, ale nigdy nie został on wdrożony. Więc nie, nie ma możliwości lepszego i płynniejszego przewijania po zawinięciu linii.

Christian Brabandt
źródło
Czy możesz podać link do miejsca, w którym omawiany jest ten problem? Chciałbym wiedzieć więcej.
zool
1
tutaj lub tutaj
Christian Brabandt
2

Myślę, że szukasz:

set display=lastline

Zobaczyć :help 'display'.

romainl
źródło
To trochę działało, ale wciąż nie mam płynnego przewijania linia po linii, które otrzymuję, gdy nie wrapjest ustawione. Zachowanie wygląda teraz w rzeczywistości niekonsekwentnie: bardziej stopniowe (ale nadal nie linia po linii) przewijanie podczas wchodzenia w górę i nagłe pojawianie się akapitów podczas schodzenia (patrz GIF ).
zool
Szkoda, przeczytaj stronę pomocy, która naprawdę wyglądała jak moja opcja.
zool
2
Według :help 'scrolljump'mnie minimalny skok, jaki można uzyskać, to jedna linia, gdy kursor przesuwa się poza ekran. Ale przy wrapustawieniu jak w twoim przypadku, jedna linia może zajmować wiele linii ekranu.
Vitor,