Vim

Z Linux Wiki
Skocz do: nawigacja, szukaj
Praca nad tekstem w edytorze vim

Vim – edytor tekstu w środowiskach uniksowych i w Linuksie. Program powstał w roku 1991 jako następca uniksowego edytora Vi a napisał go holenderski programista Bran Molenaar. Jest programem rozprowadzanym na zasadzie GNU FDL. należy do tzw. charityware – ochotnicy gotowi zarejestrować program proszeni są o wpłacenie 10 euro na potrzeby głodujących dzieci i ofiar AIDS w Ugandzie. Edytor działa w środowisku tekstowym, choć możliwe użycie go w środowisku graficznym. Istnieje również wersja dla systemu MS Windows. Uważany jest za jeden z najpopularniejszych edytorów oprócz Emacs. Standardowo dołączany do każdej dystrybucji GNU/Linuksa, jednak jest to wersja minimal. Nie posiada ona np. modułu sprawdzania pisowni czy też kolorowania składni. Żeby posiadać te funkcje, zwykle wystarczy doinstalować pakiet vim-enhanced

Zasada działania[edytuj]

Tekst edytowany w interfejsie graficznym

Vim jest edytorem modalnym – oznacza to, że pracuje w różnych trybach. Najpopularniejsze z nich to:

  • tryb wstawiania, w którym zachowuje się jak normalny edytor
  • tryb nadpisywania w którym zastępowane są istniejące znaki
  • tryb poleceń, w którym z klawiatury wydawane są polecenia nawigacyjne
  • tryb wizualny, w którym możliwe sa operacje na zaznaczonych blokach tekstu.

Cechy programu[edytuj]

Vim jest niezwykle rozbudowanym edytorem o ogromnych możliwościach. Do standardowych możliwości edytora zaliczyć należy podświetlanie składni, możliwość korekty pisowni, możliwość pracy w wielu oknach, edycja tekstów postskryptowych w języku TEX. Jest edytorem bardzo plastycznym i wysoce konfigurowalnym. Jego minusem jest trudna nawigacja w długich liniach, stąd edytor poleca się głównie programistom; pisanie w nim zwykłych tekstów może być uciążliwe.

Kontrowersje[edytuj]

Podstawowym zarzutem stawianym vim-owi jest jego trudna obsługa i duża liczba apriorycznych poleceń. Zwolennicy edytora uważają natomiast, że jest on intuicyjny i logiczny. Duża grupa kontestujących wywodzi się ze środowisk wspierających konkurencyjny edytor Emacs. Istnieje niepisana wojna między zwolenników obu programów.

Podstawowe polecenia edytora[edytuj]

Operacje na plikach tekstowych[edytuj]

  • vim nazwatekstu.txt – otwarcie tekstu,
  • ZZ – zapisanie tekstu i opuszczenie edytora,
  • :q! – opuszczenie edytora bez zapisywania zmian,
  • :e! – ładowanie poprzedniej wersji tekstu.

Poruszanie się w trybach pracy[edytuj]

  • i – przejście w tryb wstawiania,
  • a – przejście w tryb wstawiania pierwszego znaku za kursorem,
  • o – rozpoczęcie pracy w trybie wstawiania od nowej linii pod kursorem,
  • O – rozpoczęcie pracy w trybie wstawiania nowej linii nad kursorem,
  • R – przejście w tryb nadpisywania,
  • A – przejście w tryb wstawiania na koniec linii.

Poruszanie się po tekście[edytuj]

  • h – znak w lewo,
  • j – znak w dół,
  • r – znak górę,
  • l – znak w prawo,
  • w – wyraz w prawo,
  • b – wyraz w lewo,
  • e – przeniesienie kursora na koniec wyrazu, aby zacząć nowy, ea(mod),
  • 0 – do początku akapitu,
  • $ – do końca akapitu,
  • gg – powrót na początek tekstu,
  • [liczba]G – przeniesienie do wiersza o określonym numerze,
  • H – przeniesienie kursora na górę ekranu,
  • M – przeniesienie kursora na środek ekranu,
  • L – przeniesienie kursora do ostatniego wiersza na stronie,
  • G$ – na koniec tekstu,
  • fm – przejdź do litery m,
  • Fm – przejdź do poprzedniej litery m.

Poruszanie się po ekranie[edytuj]

  • ^F – ekran w dół,
  • ^B – ekran w górę,
  • ^D – pół ekranu w dół,
  • ^U – pół ekranu w górę.

Kasowanie i zamiana[edytuj]

  • x – kasuj znak pod kursorem,
  • X – kasuj znak przed kursorem,
  • r – zstąp znak,
  • s – zmiana jednego znaku,
  • dw – kasuj wyraz za kursorem, d3w – kasuj 3 wyrazy za kursorem,
  • db – kasuj do początku wyrazu,
  • d$ – kasuj do końca linii,
  • dd – kasuj całą linię,
  • dG – kasowanie do końca pliku,
  • dgg – wywala wszystko do początku pliku,
  • p – wstawianie (uprzednio skasowanej zawartości),
  • u – cofanie zmiany,
  • ^R – przywracanie zmiany,
  • x – zmiana na wielką literę,
  • p – eliminacja czeskiego błędu (kursor na pierwszej literze).

Wyszukiwanie[edytuj]

  • /wyraz – szukaj wyraz za kursorem,
  • ?wyraz – szukaj wyraz przed kursorem.

Schowek (operacja na bloku)[edytuj]

  • "*yy – schowanie linii do schowka,
  • "*p – wklejenie zawartości schowka.

Okna i podział[edytuj]

  • :split – dzieli ten sam txt na 2 okna,
  • :split innytekst.txt – otwiera inny tekst w drugim oknie,
  • ^W – przemieszczanie się między oknami,
  • :only :close – zamykanie okien,
  • :wall – zapisywanie obu okien,
  • :wqall – zapisywanie wszystkich okien i opuszczenie edytora.

Inne[edytuj]

  • :set number – wprowadzenie numeracji linii,
  • J – łączenie wierszy za kursorem,
  • read !ls – wczytywanie katalogu,
  • ^L – odświeża ekran,
  • g^g – liczenie słów.

Linki zewnetrzne[edytuj]