W Vimie nie podoba mi się, jak po osiągnięciu końca pliku umieszcza ostatnią linię na dole ekranu.
Czy w ogóle istnieje możliwość, aby ostatnia linia znajdowała się około 10 linii nad dolną częścią ekranu i po prostu tworzyła puste linie pod nią?
cursor-movement
scrolling
cursor
Miguel Vera
źródło
źródło
zz
go przerysuje ekran i ustawi bieżącą linię na środku okna, która powinna wyświetlać kilka~
linii po EOF.scrolloff
ustawioną opcję. Spróbuj,:set scrolloff=0
a to zachowanie powinno się zmienić.Odpowiedzi:
Możesz użyć, ctrlEaby przewinąć plik w dół, gdy znajdziesz się na końcu pliku, doda on linię „wirtualną”, dzięki czemu ostatni wiersz pliku nie będzie na dole okna.
Dodatkowo możesz użyć opcji,
scrolloff
aby zawsze pozwalać niektórym wierszom za kursorem, dodać to do.vimrc
:Aby uzyskać więcej informacji, patrz
:h 'scrolloff'
i:h CTRL-E
.źródło
scrolloff
na 10 nadal nie pokaże linii PO EOF, tak jak chciał PO.CTRL-E
iscrolloff
właśnie „dodatkowe”. Teraz jest to rozwiązanie częściowe, OP może go nie zaakceptować, ponieważ nie do końca odpowiada na pytanie.CTRL-E
tego właśnie szukałem. Bardzo bym chciał, gdyby istniał sposób automatycznego wyświetlania linii po EOF.<C-e>
podczas przewijania w dół, ale tak naprawdę nie jestem pewien, czy zadziałałoby poprawnie ... Spróbuję zobaczyć, co można zrobić, ale nie jestem pewien Będę mógł stworzyć coś wygodnego.Moim zdaniem najłatwiejszym rozwiązaniem było dodanie
zz
doj
ik
. Ma główny efekt uboczny centrowania kursora. Nie przeszkadza mi to i wolę to od wyciągania szyi. Próbowałemscrolloff
iCTRL-E
jest po prostu niewygodnie.Wpisz następujące polecenie w
:
lub .vimrcnnoremap j jzz
nnoremap k kzz
Źródło: http://vim.wikia.com/wiki/Keep_your_cursor_centered_vertically_on_the_screen
źródło