W terminalu mogę to zrobić, naciskając shift + home i shift + end, ale wydaje się, że to nie działa w vimie. Klawisze Home i End przewijają tylko okno terminala. Chciałbym przejść do trybu edycji.
W terminalu mogę to zrobić, naciskając shift + home i shift + end, ale wydaje się, że to nie działa w vimie. Klawisze Home i End przewijają tylko okno terminala. Chciałbym przejść do trybu edycji.
Odpowiedzi:
Ta odpowiedź zakłada, że używasz vima w oknie terminala .
Domyślne wiązania Home i End różnią się nieco od oczekiwań programu na podstawie zwykłego ustawienia TERM (tj. Wariantu xterm). Jeśli chcesz pozostać przy domyślnych powiązaniach (i musisz użyć wariantów Shifted w Terminalu ), możesz spróbować umieścić coś takiego .vimrc
:
:" map Mac OS X Terminal.app default Home and End
:map <ESC>[H <Home>
:map <ESC>[F <End>
:imap <ESC>[H <C-O><Home>
:imap <ESC>[F <C-O><End>
:cmap <ESC>[H <Home>
:cmap <ESC>[F <End>
W przeciwnym razie możesz spróbować dostosować kody wysyłane przez terminal podczas korzystania z opcji Początek i Koniec (nawet jeśli nie jest to możliwe). Wyszukiwanie prawdopodobnie ujawniłoby niektóre miejsca, które opisują, jak to zrobić ( tutaj jest jedno ). Podstawową ideą jest to, że chcesz, aby Terminal wysyłał ESC [1 ~ zamiast ESC [H dla Home i ESC [4 ~ zamiast ESC [F dla End (lub Shift-Home / Shift-End, jeśli chcesz zachować Home / Koniec dostępu do przewijania). Opisałbym ten proces bardziej szczegółowo, ale mam tylko 10.4 i wiem, że Terminal został bardzo zmieniony w wersji 10.5 i nowszych.
użyj 0 i $, aby przejść na początek i koniec linii. Odwiedź tę stronę: http://alvinalexander.com/linux/vi-vim-editor-end-of-line .
0
i $
.
Jako dodatek do odpowiedzi Chrisa możesz także uzyskać nawigację po słowie (za pomocą Option+arrow
klawiszy), po prostu dodając te cztery wiersze:
:map <ESC>f el
:imap <ESC>b <C-o>b
:imap <ESC>f <C-o>el
:cmap <ESC>f el
Zauważ, że o
małe litery są małe, aby nie wyjść z insert
trybu operacji. Możesz również zmienić wielkie litery O
w oryginalnej odpowiedzi, aby uzyskać ten sam efekt.
W MacVimie możesz użyć polecenia „Strzałka w lewo” i „Strzałka w prawo”, aby przejść do początku i końca linii w trybie edycji.
Przejdź do Terminal -> Preferencje -> Profile -> Klawiatura i dodaj:
Klawisz: ↖ Działanie: \ 033OH
Klawisz: ↗ Działanie: \ 033OF