Jak umieścić bieżącą linię w górnej / środkowej / dolnej części ekranu w vimie?


118

Każda szybsza sztuczka nawigacyjna, aby umieścić linię, w której kursor znajduje się w tej chwili, do

  • u góry ekranu?
  • środek ekranu?
  • dolna część ekranu?

Odpowiedzi:


153

z<CR>lub zt umieszcza bieżącą linię na górze ekranu ( <CR>== Enter)

z.lub zz umieszcza bieżącą linię na środku ekranu

z-lub zb umieszcza bieżącą linię na dole ekranu

( z<CR>, z., I z-umieszcza kursor w pierwszej nie pustej kolumnie. zt, zzI zbpozostawia kursor w bieżącej kolumnie)

Więcej informacji o przewijaniu na http://vimdoc.sourceforge.net/htmldoc/scroll.html lub
w vimie:help scroll-cursor


14
Możesz także użyć zzzamiastz.
evilsoup

2
Nie słyszałem o tym z.wcześniej. Myślę, że wolę mieć dwa różne klawisze zamiast podwójnego naciśnięcia. Możesz wykonywać równoległe naciśnięcia klawiszy jednocześnie, o ile wylądują one we właściwej kolejności, a czas między trafieniami może być dość krótki, co czyni tę opcję bardzo szybką. zI .klawisze są lusterka od siebie (przynajmniej na moim en-GB klawiaturze). Można rozsądnie preferować dwukrotne dotknięcie przycisku zi świetnie, że mamy obie opcje.
Drew Noakes

15 lat vima i nie wiedziałem o tej poręcznej drobiazgu! Głosuj!
PnotNP

14

Wyjście :help scroll-cursorwzmianki o @mtk. Zauważ, że istnieje różnica między zzi z..


Przewijanie względem kursora (kursor przewijania)

Następujące polecenia zmieniają położenie okna edycji (tej części bufora, którą widzisz), utrzymując kursor w tym samym wierszu:

z<CR>                   Redraw, line [count] at top of window (default
                        cursor line).  Put cursor at first non-blank in the
                        line.

zt                      Like "z<CR>", but leave the cursor in the same
                        column.  {not in Vi}

z{height}<CR>           Redraw, make window {height} lines tall.  This is
                        useful to make the number of lines small when screen
                        updating is very slow.  Cannot make the height more
                        than the physical screen height.

z.                      Redraw, line [count] at center of window (default
                        cursor line).  Put cursor at first non-blank in the
                        line.

zz                      Like "z.", but leave the cursor in the same column.
                        Careful: If caps-lock is on, this command becomes
                        "ZZ": write buffer and exit!  {not in Vi}

z-                      Redraw, line [count] at bottom of window (default
                        cursor line).  Put cursor at first non-blank in the
                        line.

zb                      Like "z-", but leave the cursor in the same column.
                        {not in Vi}

Przewijanie w poziomie (przewijanie w poziomie)

W przypadku następujących czterech poleceń kursor podąża za ekranem. Jeśli znak, na którym znajduje się kursor, zostanie przesunięty poza ekran, kursor zostanie przesunięty do najbliższego znaku na ekranie. Wartość „sidescroll” nie jest używana.

z<Right>    or
zl                      Move the view on the text [count] characters to the
                        right, thus scroll the text [count] characters to the
                        left.  This only works when 'wrap' is off.  {not in
                        Vi}

z<Left>      or
zh                      Move the view on the text [count] characters to the
                        left, thus scroll the text [count] characters to the
                        right.  This only works when 'wrap' is off.  {not in
                        Vi}

zL                      Move the view on the text half a screenwidth to the
                        right, thus scroll the text half a screenwidth to the
                        left.  This only works when 'wrap' is off.  {not in
                        Vi}

zH                      Move the view on the text half a screenwidth to the
                        left, thus scroll the text half a screenwidth to the
                        right.  This only works when 'wrap' is off.  {not in
                        Vi}

W przypadku następujących dwóch poleceń kursor nie jest przesuwany w tekście, tylko tekst przewija się na ekranie.

zs                      Scroll the text horizontally to position the cursor
                        at the start (left side) of the screen.  This only
                        works when 'wrap' is off.  {not in Vi}

ze                      Scroll the text horizontally to position the cursor
                        at the end (right side) of the screen.  This only
                        works when 'wrap' is off.  {not in Vi}
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.