Jeden z najpopularniejszych edytorów tekstu w systemach Unixowych.
Vim jest edytorem modalnym, tzn. ma kilka trybów pracy. Najważniejsze z nich to NORMAL, VISUAL, INSERT, REPLACE.
Po uruchomieniu Vim zawsze znajduje się w trybie NORMAL.
ESC - przejście z dowolnego trybu do trybu NORMAL: - tryb ExR - tryb REPLACEv - tryb VISUAL - w tym trybie można zaznaczać, kopiować, duplikować i wklejać teksti - tryb INSERT - w tym trybie można wprowadzać tekst. Do trybu INSERT przechodzimy także po wykonaniu poleceń takich jak o (nowa linia), a (append).vi nazwa_pliku.txt - otwarcie/założenie plikuvi +5 nazwa_pliku.txt - otwarcie pliku z kursorem ustawionym w 5-tej liniivi +/tekst nazwa_pliku.txt - otwarcie pliku z kursorem ustawionym w linii zawierającej „tekst”:w - zapisanie zmian w pliku:q - wyjście z programu:vi nazwa_pliku - otwarcie pliku do edycji:view nazwa_pliku - otwarcie pliku w trybie tylko do odczytu/xxx - wyszukanie ciągu liter w tekście, gdzie xxx to szukany napis; n - przejście do kolejnego wystąpienia
Do trybu VISUAL wchodzimy z trybu NORMAL naciskając klawisz v. Teraz za pomocą strzałek możemy zaznaczać tekst.
Jeżeli zamiast v naciśniemy Ctrl+v będziemy w trybie zaznaczania kolumnowego.
y - skopiowanie zaznaczonego tekstup - wklejenie zaznaczonego tekstuW trybie NORMAL naciskamy klawisz:
i - insert (wstawianie przed kursorem)a - append (wstawianie za kursorem)I - insert na początku wierszaA - append na końcu wierszao - nowy wiersz pod kursoremO - nowy wiersz nad kursoremx - usunięcie znaku pod kursoremX - usunięcie znaku przed kursoremdd - usunięcie wierszaD lub $d - usunięcie tekstu od kursora do końca liniidG - usunięcie tekstu od bieżącej linii do końca plikudg - usunięcie tekstu od bieżącej linii do początku plikuu - cofnięcie ostatniej zmianyW trybie NORMAL (ten po naciśnięciu <ESC>) naciskamy klawisz:
h - przejście w lewo o 1 znakj - przejście w dół o 1 linijkęk - przejście w górę o 1 linijkęl - przejście w prawo o 1 znakw - przejście do następnego słowa (word) (1 słowo w prawo)b - przejście do poprzedniego słowa (word) (1 słowo w lewo)e - przejście do końca tego słowa (word) w prawoW - przejście do następnego SŁOWA (WORD) (1 SŁOWO w prawo)B - przejście do poprzedniego SŁOWA (WORD) (1 SŁOWO w lewo)E - przejście do końca tego SŁOWA (WORD) w prawo/szukana_fraza<Enter> - wyszukanie i przejście do szukanej frazy
Przykład różnicy między słowo (word) a SŁOWO (WORD)
w:
mam kota-i-psa, lalala
W:
mam kota-i-psa, lalala
W trybie NORMAL (ten po naciśnięciu <ESC>) wciskamy klawisz(e):
<Ctrl>+s - dzielimy okno do układu 2×1 (wiersze x kolumny)<Ctrl>+v - dzielimy okno do układu 1×2 (wiersze x kolumny)
Okna domyślnie wyświetlają ten sam plik.
Można teraz np. w 1 oknie iść na górę pliku (gg) i sprawdzić zdefiniowane stałe (const-y)
tak aby móc je poprawnie wpisać w oknie nr 2 (tu kursor wciąż stoi na swoim poprzednim miejscu).
:q<Enter> zamykanie danego okna<Ctrl>+h - przejście kursorem do okna po lewej<Ctrl>+l - przejście kursorem do okna po prawej<Ctrl>+j - przejście kursorem do okna poniżej<Ctrl>+k - przejście kursorem do okna powyżejyy - skopiowanie całego wiersza do schowkap - wklejenie linii pod kursoremyw - skopiowanie słowaNaciskając sekwencję klawiszy, można utworzyć bardziej złożone polecenie. Oto przykłady.
y3w - skopiowanie trzech słów10y - skopiowanie dziesiątej liniid2w - usunięcie dwóch słów7p - wklejenie skopiowanego tekstu siedem razy5dd - usunięcie pięciu linii10G - przeniesienie kursora do dziesiątego wiersza