Wszystko wskazuje na to, że przerzucę się zupełnie na vim-a. Od tylu lat szukam edytora “idealnego” a on cały czas czaił się w tle. Chyba największy problem jeśli chodzi o jego popularność to “krzywa uczenia się”, niestety lekko nie jest ale kiedy już człowiek zacznie się wciągać to szybko zorientuje się jak potężnym i wygodnym narzędziem jest vim. Oceniam moją znajomość tego edytora na jakieś 15%. Mam plan dojścia do 50% ;).
Tryby
Operacja |
Kroki |
Insert Mode |
W tym trybie edytujemy dokument przechodzimy do niego za pomocą klawisza i, wychodzimy do trybu “Normal Mode” - Esc |
Normal Mode |
W tym trybie wciskane klawisze są traktowane jako polecenia. Powinien to być domyślny tryb pracy z vim-em |
Visual Mode |
Tryb w którym dokonujemy zaznaczania tekstu |
Poruszanie
Operacja |
Kroki |
Góra, dół, lewo, prawo |
k, j, h, l |
Początek linii |
0 |
Koniec linii |
$ |
Wyraz do przodu |
w |
Wyraz wstecz |
b |
Dół |
W przypadku pojedyczej linii, zajmującej kilka linii ekranu gj |
Góra |
W przypadku pojedynczej linii, zajmującej kilka linii ekranu gk |
Początek pliku |
:0 lub gg |
Koniec pliku |
:$ lub G |
Przejście do miejsca ostatniej edycji |
gi |
Wprowadzanie tekstu
Operacja |
Kroki |
Połączenie dwóch linii tekstu |
J |
Copy/Cut/Paste |
Przechodzimy do trybu “visual” v lub V jeśli chcemy od razu zaznaczać całe linie i zaznaczamy interesujący nas tekst, y (skopiowanie) d (wycięcie), przechodzimy do miejsca w którym ma się pojawić skopiowany/wycięty tekst,p wklejenie za kursorem P wklejenie od miejsca w którym jest kursor |
Wcięcia |
Wyłącznie automatycznych wcięć przy wklejaniu :set paste , włączenie :set nopaste |
Dodanie linii |
Poniżej kursora o, powyżej O |
Usuwanie
Operacja |
Kroki |
Pojedynczego znaku pod kursorem |
x. W trybie edycji działają również Delete, Backspace |
Cała linia |
dd |
Od miejsca w którym jest kursor do początku linii |
d0 |
Od miejsca w którym jest kursor do końca linii |
d$ |
Od miejsca w którym jest kursor do początku pliku |
dgg |
Od miejsca w którym jest kursor do końca pliku |
dG |
Usunięcie fragmentu tekstu |
Zaznaczamy od którego miejsca ma być usunięty tekst ma, przechodzimy kursorem do końca fragmentu który chcemy usunąć i wpisujemy d‘a |
Usuwanie w trybie blokowym |
Tryb edycji blokowej jest przydatny kiedy np. w akapicie na początku linii są niepotrzebne odstępy. Można je usunąć za jednym razem, przechodząc do trybu blokowego Ctrlv i zaznaczyć kursorem kolejne linie, następnie d lub x |
Usuwanie w trybie liniowym |
Włączamy tryb zaznaczania liniowego Shiftv, kursorem zaznaczamy linie do usunięcia a następnie usuwamy d lub x |
Wyszukiwanie
Operacja |
Kroki |
* |
Wyszukanie kolejnego wyrazu znajdującego się w miejscu kursora |
# |
Wyszukanie poprzedniego wyrazu znajdującego się w miejscu kursora |
Zamiana
Zakładki
Operacja |
Kroki |
Otwarcie nowej zakładki |
:tabnew |
Poruszanie się pomiedzy zakładkami |
gt |
Przywrócenie przypadkowo zamkniętej zakładki |
:ls - wyświetlnie bufora a następnie :tabnew +Xbuf gdzie X to numer pod którym plik jest w buforze |
Tips&Tricks
Operacja |
Kroki |
Mini Kalkulator |
W trybie “insert”, Ctrlr=, wpisujemy równanie po wciśnięciu Enter wynik pojawi się w miejscu kursora |
.vimrc
Wpis |
Opis |
paste mode |
Umożliwi włączanie/wyłączanie automatycznego ustawiania odstępów za pomocą klawisza F2. Zamiast zabawy z :set paste i :set nopaste |