Praca z edytorami Vi i Vim

Vi to podstawoey edytor w środowisku Unixowym, dostępny jest także w każdej dystrybucji linuksowej.

Uruchamianie edytora vi

Samo wydanie polecenia vi powoduje otwarcie edytora vi z wprowadzeniem. Jezeli chcemy otworzyc konkretny plik to na koncu podajemy jego nazwę.

Ciekawe są opcje pozwalające otworzyć plik na konkretnej linii, na koncu pliku lub przy określonym słowie.

Tryby pracy edytora vi

command mode

insert mode

comnnad line mode (wejdziemy w niego wpisując „:”, „/” lub „?”)

Poruszanie się po tekście

Po tekscie mozemy poruszać się używajać strzałek. Niestety, nie każdy terminal na to pozwala a czasem używając starszej wersji vi tez spotkamy ten problem. Wtedy powinnysmy skorzystać z klawiszy „h”, „j”, „k”, „l”, które odpowiedni przenoszą kursor o jeden znak w lewo, w dół, w górę oraz w prawo. Przed wprowadzeniem tych poleceń możemy dodać liczbę, wtedy dane polecenie będzie odnosiło się do określonej ilości linii.

Z pewnością znane są znaki „^” i „$” które w wyrażeniach regularnych oznaczają odpowiednio początek i koniec tekstu. Vi potrafi je również zintepretować i ustawić kursor na początku lub końcu tekstu. Jeżeli chcemy przejść do końca zdania możemy użyć znaku „)”, wtedy kursor zostanie ustawiony na początku zdania (przeważnie rozpoznawane jest przez wystąpienie znaku „.” lub podobnego kończącego zdanie). Przejscie do kolejnego słowa odbywa się przez wciśnięcie „w” (jak word) lub „W” (różnicę zobacz w manualu). Podobnie możemy ustawić kursor na końcu słowa, wykorzystamy do tego „e” (i analogicznie „E”). Jeżeli chcemy przejść słowo do tyłu używamy klawisza „b” (analogicznie „B”).

Możemy też przesuwać kursor w obrębie okna. Klawisz „H” (czyli Shfit + „h”) przesunie kurson do lewego, górnego rogu ekranu natomiast „L” przesunie na początek ostaniej linii. Klawisz „M” ustawi kursor na środkowej linii.

Przesuwanie między ekranami (stronami na ekranie) odbywa się dzięki klawiszom „F” (shift i „f”) natomiast „B” (shift + „b”) cofa o jeden ekran. Ctr+D przesuwa o pół ekranu w dół, natomiast Control + „u” pół ekranu w górę.

Natomiast naciśnięcie klawisz G przeniesie nas na sam koniec pliku.

Edycja tekstu (Kopionwanie, usuwanie, dodawanie linii)

        Kopiowanie tekstu do bufora odbywa się przy pomocy klawisza „y”. Chcąc skopiować całą linię wykonujemy polecenie „yy”. Kopiowanie słowa to „yw” a kopiowanie pojedyńczego znaku to „y1”, oczywiscie zmieniając lub dodając liczby możemy operacją objąc większą część materiału. Jeżeli chcemy skopiować do końca zdania użyjemy „y)” natomiast jeżeli do końca paragrafu to „y}”.

        Wklejenie tekstu przed kursorem odbywa się przez klawisz „p”, natomiast przed kursorem to „P”.

        Usuwanie tekstu możliwe jest przez używanie klawfisza „x”. Sam „x” usuwa jeden znak, np. „10x” usunie 10 znaków. „X” usunie znak przed kursorem, czyli np „10X” usunie 10 znaków przed kursorem. Całą linię usuniemy dzięki poleceniu „dd”, „dw”  usunie słowo za kursorem a „dW” słowo po kursorze, „d$” usunie wszystko do końca linii od miejsca, w którym znajduje się kursor.

Dodanie nowej linii poniżej kursora to wciśnięcie „o”, natomiast powyżej kursora to Shift+”o”.

Wyszukiwanie tekstu

Klawisz „/” pozwala wyszukać łańcuch znakowy w tekście, natomiast „?” pozwala wyszukać informację „do góry” czyli wstecz. By powtórzyć szukanie naciskamy klaawisz „n”, aby poszukał w odwrotnym kierunku „N”. Jak w większości edytorów tekstowych można stosować znaki globalne „.” (pojedyńczy, dowolny znak), „*” (dowolna ilość dowolnych znaków), „[]” (wyliczenie  znaków), „[-]” zakres znaków, „[^]” (nie posujące do wyliczenia), „^” oznaczająca początek tekstu a „$” jego koniec.

Zamiana tekstu

„r” zamienia pojedyńczy znak, „R” zamienia określoną ilość znaków, „cw” zmienia słowo a „cc” zmienia całą linie.

Wykonywanie polecen w shell-u

Polecenie shell-a możemy wykonać a jego efekt wkleić do edytowanego tekstu wywołując polecenie „!r: polecenie_shella”.

Dodaj komentarz