Vim/Podstawy pracy

< Vim

Otwieranie Vima

edytuj
 
Ekran powitalny

Jak każdy tekstowy program do edycji tekstu, pozwala się uruchomić na kilka sposób - np. po to by wraz z edytorem uruchomić od razu plik tekstowy, ale nie tylko:

Polecenie Opis
Vim Pojawia się edytor z pustym oknem
vim plik.txt edytor od razu załaduje wybrany przez nas plik
vim +N plik.txt To samo co wcześniej, jednak z jednoczesnym włączeniem trybu Normal
vimtutor Tryb samouczek
vimdiff plik1.txt plik2.txt Tryb porównania i lączenia kilku plików
vim . Tryb przeglądarki plików


W Ubuntu 22.04 program uruchamiamy poleceniem:

vi

Interfejs Vima

edytuj

Interfejs Vima jest przeznaczony do używania głównie za pomocą klawiatury, a użytkownicy wpisują polecenia do nawigacji i edycji tekstu. Kiedy po raz pierwszy otworzysz Vima, będziesz w trybie normalnym, który jest trybem do nawigacji i edycji tekstu.

Oto kilka kluczowych elementów interfejsu Vima:

  1. Linia poleceń: Na dole ekranu znajduje się linia poleceń, w której możesz wprowadzać polecenia do wykonywania różnych zadań w Vimie, takich jak zapisywanie lub zamykanie pliku.
  2. Linia stanu: Na dole ekranu znajduje się linia stanu, która zawiera informacje o bieżącym pliku, takie jak nazwa pliku, numer bieżącego wiersza i tryb edycji.
  3. Wskaźnik trybu: Wskaźnik trybu pokazuje, w jakim trybie aktualnie się znajdujesz. Na przykład w trybie normalnym wyświetli się „-- NORMAL --”, natomiast w trybie wstawiania wyświetli się „-- INSERT --”.
  4. Kursor: Kursor to migająca pionowa linia wskazująca miejsce, w którym aktualnie edytujesz tekst. Kursor można przesuwać za pomocą różnych poleceń.
  5. Podział okna: Vim umożliwia podzielenie ekranu na wiele okien, których można używać do przeglądania i edytowania wielu plików jednocześnie.
  6. Podświetlanie składni: Vim obsługuje podświetlanie składni, które koloruje różne części kodu, aby ułatwić czytanie i zrozumienie.

Ogólnie rzecz biorąc, interfejs Vima został zaprojektowany tak, aby był wydajny i dostosowywalny, z naciskiem na nawigację i edycję za pomocą klawiatury. Chociaż nauka może zająć trochę czasu, opanowanie interfejsu Vima może pomóc Ci stać się bardziej wydajnym i produktywnym edytorem tekstu.

Tryby Vima

edytuj

Jak wiadomo początki są najtrudniejsze jednak jeśli poznamy choć trochę zagadnienia i coraz bliżej będziemy poznawać problem, tym bardziej wyda się on nam banalny. Tak samo jest z edytorem Vim i jego obsługą. Najważniejszą sprawą jest to aby poznać jego ogólne założenia i jego budowę, która różni się bardzo od tych standardowych edytorów tekstów, do których jesteś przyzwyczajony.

W przeciwieństwie do standardowych edytorów tekstów Vim ma budowę modułową, co znaczy że udostępnia nam kilka trybów pracy (w sumie jest ich 11), za pomocą których jesteśmy wstanie zrobić z naszym dokumentem praktycznie wszytko. Tryby pracy w Vimie zostały podzielone na 2 kategorie: podstawowe i dodatkowe. Tych pierwszych autor wyróżnił 6, a dodatkowych jest 5. To ich opanowanie gwarantuje bezproblemową i płyną pracę z tekstem w naszym edytorze.

Wstępnie zajmiemy się ogólnym opisem trybów pracy, a ich szczegółowe funkcje i możliwości zostaną przedstawione w poszczególnych rozdziałach im poświęconych.

Podstawowe:

  • (Normal mode) - Tryb normalny: Jest to domyślny tryb w Vimie i jest używany do nawigacji i edycji tekstu. W tym trybie możesz używać różnych poleceń do przesuwania kursora, usuwania, kopiowania, wklejania i edytowania tekstu. Aby przejść do trybu normalnego, naciśnij klawisz Esc.
  • (Insert mode) - Tryb wstawiania: W trybie wstawiania można bezpośrednio wstawić tekst do dokumentu. Aby przejść do trybu wstawiania, naciśnij klawisz i lub dowolny inny klawisz skonfigurowany do wchodzenia w tryb wstawiania. W trybie wstawiania możesz używać standardowych poleceń edycji tekstu, takich jak Backspace i Delete, aby edytować tekst.
  • (Select mode) - Tryb wyboru: Tryb wyboru umożliwia podświetlanie i zaznaczanie tekstu. Aby przejść do trybu wyboru, naciśnij klawisz v. Następnie możesz użyć różnych poleceń, aby przesunąć kursor i zaznaczyć tekst.
  • (Visual mode) - Tryb wizualny: Tryb wizualny jest podobny do trybu wyboru, ale zawiera bardziej zaawansowane funkcje. Aby przejść do trybu wizualnego, naciśnij klawisz Shift i klawisz v. W trybie Wizualny możesz zaznaczać tekst i wykonywać różne operacje, takie jak kopiowanie lub usuwanie.
  • (Cmd-line mode) - Tryb wiersza polecenia: Tryb wiersza polecenia służy do wprowadzania poleceń, które mają wpływ na cały dokument lub wykonują funkcje na poziomie systemu. Aby przejść do trybu linii poleceń, naciśnij klawisz :. Stąd możesz wprowadzić różne polecenia, takie jak zapisanie dokumentu lub wyjście z Vima.
  • (Ex mode) - Tryb Ex: Tryb Ex jest podobny do trybu Cmd-line, ale zapewnia bardziej zaawansowane funkcje edycji i manipulowania plikami. Aby przejść do trybu Ex, wprowadź dwukropek, a następnie polecenie Ex. W trybie Ex można wykonywać bardziej zaawansowane funkcje edycyjne, takie jak globalne wyszukiwanie i zastępowanie

Dodatkowe:

  • (Replace mode) - Tryb zamiany: Tryb zamiany jest podobny do trybu wstawiania, ale zamiast wstawiania nowego tekstu, zastępuje istniejący tekst. Aby przejść do trybu Zamień, naciśnij klawisz R.
  • (Insert Normal mode) - Wstaw tryb normalny: Wstaw tryb normalny to odmiana trybu wstawiania, która umożliwia używanie poleceń trybu normalnego w trybie wstawiania. Aby przejść do trybu Wstaw normalny, naciśnij Ctrl-o, aby tymczasowo przejść do trybu normalnego. Poleceń trybu normalnego można następnie używać do wykonywania różnych zadań, takich jak przesuwanie kursora lub usuwanie tekstu.
  • (Insert Visual mode) - Wstaw tryb wizualny: Wstaw tryb wizualny to odmiana trybu wstawiania, która umożliwia używanie poleceń trybu wizualnego w trybie wstawiania. Aby przejść do trybu Wstaw wizualizację, naciśnij Ctrl-g, aby tymczasowo wejść w tryb Wizualny. Możesz następnie użyć poleceń trybu wizualnego, aby zaznaczyć tekst, który następnie można edytować lub usunąć.
  • (Insert Select mode) - Tryb Insert Select: Tryb Insert Select jest wariantem trybu Insert, który umożliwia używanie poleceń trybu Select w trybie Insert. Aby przejść do trybu Insert Select, naciśnij klawisze Ctrl-g, a następnie naciśnij klawisz s. Możesz następnie użyć poleceń trybu Zaznacz, aby podświetlić i zaznaczyć tekst.
  • (Operator-pending mode) - Tryb oczekiwania na operatora: Tryb oczekiwania na operatora służy do definiowania operatora oczekującego na ruch lub obiekt tekstowy. Ten tryb jest uruchamiany po wprowadzeniu polecenia operatora (takiego jak „d” dla usunięcia) i oczekiwaniu na polecenie ruchu (takie jak „w” dla słowa) lub polecenie dotyczące obiektu tekstowego (takie jak „i(” dla nawiasów wewnętrznych) .
Komenda Tryb Opis
Esc Tryb normalny (Normal mode) Pozwala on nam swobodnie przeglądać dokument oraz usuwać znaki. Wracamy do niego z dowolnego trybu klawiszem [ESC].
i lub s Tryb wprowadzania (Insert mode) Możemy za jego pomocą wstawiać nowe znaki, normalnie pisać. Nie możemy jednak płynnie przeglądać dokumentu.
v Tryb wizualny (Visual mode) Pozwala on nam, usuwać, kopiować, wycinać i wklejać teksty, a do zaznaczenia można użyć zarówno myszki jak i jednego z czterech klawiszy kierunkowych na klawiaturze.
: Cmd-line mode - Tryb poleceń Wpisujemy polecenia do konsoli. Zalecamy na początku wpisać ":help" jeżeli ktoś zna angielski. Wszelkie komendy w podręczniku do cmd-line będą wpisywane z dwukropkiem.
: ex mode - tryb ex

przełącznie między trybami

edytuj

Najważniejsze to nauczyć się przemieszczać płynnie pomiędzy tymi trybami, tak więc na początek wypadało by się z tym zapoznać.


Po uruchomieniu programu po raz pierwszy domyślnie jesteśmy w trybie Normalnym możemy w nim przeglądać dokument

Przełączamy do trybu wprowadzania za pomocą klawisza

i

Teraz wprowadzamy tekst

Przechodzimy do trybu normalnego za pomocą klawisza

Esc

Wyjście z Vima

edytuj

Przechodzimy do trybu normalnego za pomocą klawisza

Esc

i zapisujemy tekst do pliku a.txt

:wq a.txt

i naciskamy klawisz

Enter

Jeśli edytujemy już istniejący plik, który ma już nazwę to wystarczy

Esc
:w
Enter


Zakończenie pracy (bez zapisania pliku) i powrót do znaku zachęty terminala

:q!