2013-05-25 31 views
7

W Vimie można przeskoczyć do ostatniej linii z G (lub pierwszą linią z gg), ale ten ruch także przeskoczy do pierwszego znaku spacji.Przejdź do ostatniej linii, ale pozostań w tej samej kolumnie

Czy istnieje klucz do skoku do pierwszej linii (lub ostatniej), ale pozostaje w tej samej kolumnie?

+3

dokładną kopią [Jak iść do końca pliku w vim przy zachowaniu aktualnego kolumnie pod kursor?] (http://stackoverflow.com/q/16631436). – glts

+0

@glts Hah, nawet wznowiłem pytanie i odpowiedź w tym wpisie i nie pamiętałem duplikatu. No cóż, OP otrzymał odpowiedź. – timss

+0

@glts Przepraszamy. Szukałem takiego pytania (właściwie wpisując tytuł i przeszukując sugestię ze stackoverflow), ale go nie znalazłem. – radlan

Odpowiedz

12

To będzie set nostartofline. Dzięki niemu gg i G będzie utrzymywać kolumnę, jeśli to możliwe, podobnie jak j itp

Od :h startofline:

      'startofline' 'sol' 'nostartofline' 'nosol' 
'startofline' 'sol'  boolean (default on) 
         global 
         {not in Vi} 
     When "on" the commands listed below move the cursor to the first 
     non-blank of the line. When off the cursor is kept in the same column 
     (if possible). This applies to the commands: CTRL-D, CTRL-U, CTRL-B, 
     CTRL-F, "G", "H", "M", "L", gg, and to the commands "d", "<<" and ">>" 
     with a linewise operator, with "%" with a count and to buffer changing 
     commands (CTRL-^, :bnext, :bNext, etc.). [..] 
0

Tak, jest kluczem do tego wiązania. Ale to jest całkiem na uboczu.

  • 1 CTRL+End: Pierwsza linia, sama kolumna
  • CTRL+End: ostatni wiersz, sama kolumna
+0

Mimo że to nie odpowiada na pytanie - bardzo interesujące! Nie pamiętam, żeby kiedykolwiek widziałem to polecenie. Miłe znalezisko. – glts

+0

To nie działa w moim Vimie. Nie wiem, czy to dlatego, że moje ustawienia vima lub vim 8.0 uważają to za błąd i go naprawiają. – off99555

Powiązane problemy