Idź na początek linii bez otwierania nowej linii w VI


229

Od wieków używam SHIFTOi SHIFT$przechodzę na początek i koniec linii w vi.

SHIFTOJest to jednak więcej w przypadku otwierania nowej linii nad kursorem.

Czy jest jakieś polecenie, które poprowadzi Cię na początek linii?


9
Oprócz poniższych odpowiedzi wpisz: pomóż ruchom lewo-prawo w Vimie, aby uzyskać mnóstwo informacji.
ngm

dobra książka dla vima: ćwiczenie w vimie. ^ 0
陈思秀

Odpowiedzi:


426

Możesz użyć ^lub 0(Zero) w trybie normalnym, aby przejść na początek linii.

^przesuwa kursor do pierwszego niepustego znaku linii
0zawsze przenosi kursor do „pierwszej kolumny”

Możesz także użyć Shiftido przejścia i przejścia do trybu wstawiania.


5
Również Shift + A i Shift + I przechodzą odpowiednio na koniec i początek wiersza, a także przełączają się na Wstaw model
bibstha

7
Dla mnie naciskanie ^zwykle nie jest tak łatwe jak naciskanie 0i wkolejno.
DXDXY



12

Możesz użyć 0lub, ^aby przejść do początku linii.
I może użyć Shift+, Iaby przejść do początku i przejść do trybu edycji ( Wstaw ).


Odpowiedź jest w większości prawidłowa, ale jest małe zastrzeżenie. Shift+Ilub ^przeniesie kursor na początek tekstu w linii. Jeśli linia ma ntabulatory na początku, przesunie kursor do n*tabstop + 1tej kolumny. Podczas gdy 0przesuwa kursor do pierwszej kolumny linii.
narendra-choudhary

10

Istnieje inny sposób:

|

To jest „rura” - symbol znajdujący się pod backspace w układzie ANSI .

Vim quickref ( :help quickref) opisuje to jako:

N      |      to column N (default: 1)

Co z owiniętymi liniami?

Jeśli masz włączone zawijanie linii 0i |nie będzie Cię już prowadzić do początku linii ekranu. W takim przypadku użyj:

g0

Ponownie, vim quickref doc:

 g0   to first character in screen line (differs from "0"
      when lines wrap)

Teraz widzę, dlaczego to działa. Dzięki. Zastanawiałem się. Myślę, że jest lepiej niż 0ponieważ |i $są na tym samym kluczu.
WesternGun


6

Przesuń kursor na początek lub koniec w trybie wstawiania

  • I - Przesuwa kursor do pierwszego niepustego znaku w bieżącym wierszu i włącza tryb wstawiania.
  • A - Przesuwa kursor do ostatniego znaku w bieżącym wierszu i włącza tryb wstawiania.

Tutaj Ijest równoważna ^+ i. Podobnie Ajest równoważne z $+ a.

Po prostu przesuń kursor na początek lub koniec

  • ^ - Przesuwa kursor do pierwszego niepustego znaku w bieżącym wierszu
  • 0 - Przesuwa kursor do pierwszego znaku w bieżącym wierszu
  • $ - Przesuwa kursor do ostatniego znaku w bieżącym wierszu

5

Właśnie znalazłem 0 (zero) i shift + 0 działa na vimie.


5
shift+0to )jest następne zdanie
mihai,

Shift+0jest lepszy, ^pokazuje postać i to denerwujące. Dzięki
calbertts,

1

0 Przenosi Cię na początek linii

Shift 0 Prowadzi cię do końca linii


Shift-0 (')') nie prowadzi do początku linii
Boris Churzin

@Devenv: To prawda! 0 woli
Sagar Jain

1
Shift-0 („)”) to „zdanie do przodu”, a nie „koniec linii” (to miałem na myśli)
Boris Churzin
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.