Wazniejsze komendy edytora vi
Operacje na plikach, zakonczenie pracy
ZZ lub :x -- wyjscie z edytora z zapisaniem dokonanych poprawek do zbioru nazwapliku
:w -- zapisuje zmiany do zbioru nazwapliku
:q! -- wyjscie z edytora bez zachowania poprawek
:w nazwa -- zapisuje zawartosc bufora edytora do zbioru nazwa
:x,yw nazwa -- zapisuje linie o numerach od x do y do zbioru nazwa
:e nazwa -- laduje zbior nazwa do bufora edytora
:e! -- wymazuje dokonane modyfikacje i udostepnia ponownie ten sam zbior do edycji
:r nazwa -- wczytuje zbior nazwa za linie biezaca
Przejscie do trybu wprowadzania tekstu
i -- tekst wstawiany jest przed biezaca pozycja kursora
I -- przesuwa kursor do poczatku linii biezacej i umozliwia wstawianie tekstu od tej pozycji
o -- tworzy nowa linie ponizej biezacej i umozliwia wprowadzanie tam tekstu
O -- tworzy nowa linie powyzej biezacej i umozliwia wprowadzenie tam tekstu
a -- umozliwia wprowadzanie tekstu za biezaca pozycja kursora
A -- przesuwa kursor na koniec linii biezacej i umozliwia wprowadzanie tekstu od tej pozycji
ESC -- wyjscie z trybu wprowadzania tekstu, powrot do trybu wprowadzania komend
Tryb polecen
W trybie polecen wykonuje sie komendy naciskajac opisane nizej klawisze lub sekwencje klawiszy. Komendy mozna podzielic na kilka grup:
Przesuwanie kursora
0 -- przesuwa kursor do pierwszego znaku w linii
$ -- przesuwa kursor do ostatniego znaku w linii
b -- przesuwa kursor w lewo o jedno slowo
w -- przesuwa kursor w prawo o jedno slowo
+ -- przesuwa kursor do poczatku nastepnej linii
& -- przesuwa kursor do poczatku poprzedniej linii
Enter -- przesuwa kursor do poczatku nastepnej linii
j -- przesuwa kursor do nastepnej linii w tej samej kolumnie
k -- przesuwa kursor do poprzedniej linii w tej samej kolumnie
1G -- przesuwa kursor do poczatku tekstu
G -- przesuwa kursor do poczatku ostatniej linii tekstu
nG -- przesuwa kursor do linii o numerze n
{ -- przesuwa kursor do poczatku poprzedniego paragrafu
} -- przesuwa kursor do konca biezacego, lub nastepnego paragrafu
CTRL+f -- przesuwa tekst o 1 ekran do przodu
CTRL+b -- przesuwa tekst o 1 ekran do tylu
H -- przesuwa kursor do gornego lewego rogu ekranu
M -- przesuwa kursor do srodka ekranu
L -- przesuwa kursor do lewego dolnego rogu ekranu
Kasowanie
x -- usuwa 1 znak na biezacej pozycji kursora
nx -- usuwa n znakow na prawo od biezacej pozycji kursora
X -- usuwa 1 znak na lewo od biezacej pozycji kursora
nX -- usuwa n znakow na lewo od biezacej pozycji kursora
D -- usuwa znaki od biezacej pozycji kursora do konca linii
dd -- usuwa linie biezaca
ndd -- usuwa n linii poczawszy od linii biezacej
d0 -- usuwa znaki od poczatku linii biezacej do pozycji kursora
dH,dM,dL -- usuwa znaki od pozycji kursora odpowiednio do gory, srodka i dolu ekranu
dG -- usuwa znaki od linii biezacej do konca zbioru
d/ abcd Enter -- usuwa znaki od biezacej pozycji kursora do podanego ciagu znakow abcd
Modyfikacje
r x -- zamienia znak na pozycji kursora na znak x
R text ESC -- zamienia znaki od pozycji kursora na wpisywany text (nadpisuje)
s text ESC -- usuwa 1 znak na pozycji kursora i wstawia w to miejsce text
cc text ESC -- zamienia cala linie biezaca na wpisywany text
C text ESC -- zamienia znaki od pozycji kursora do konca linii na wpisywany text
c abcd Enter -- pozwala zamienic znaki od pozycji kursora do zadanego ciagu znakow abcd i wprowadzic w to miejsce inny ciag znakow wpisanych z klawiatury i zakonczony nacisnieciem klawisza ESC
ddp -- zamienia miejscami linie biezaca z nastepna
Przesuwanie tekstu do bufora tymczasowego
d, dd, lub D -- usuwaja tekst do bufora tymczasowego zgodnie z opisem komend usuwajacych
yy lub Y -- kopiuje linie biezaca do bufora tymczasowego
nyy lub nY -- kopiuje n linii do bufora tymczasowego, poczawszy od linii biezacej
Odzyskiwanie tekstu z bufora tymczasowego i wstawienie go do zbioru
p -- wstawia tekst z bufora tymczasowego za linie biezaca
P -- wstawia tekst z bufora tymczasowego przed linie biezaca
Przyklady operacji na buforach nazwanych (nazwa buforu poprzedzona jest podwojnym apostrofem: ").
"a3dd -- usuwa z tekstu trzy linie i przesyla je do bufora o nazwie a
"ayy -- kopiuje linie biezaca do bufora o nazwie a
"ap -- wstawia zawartosc bufora o nazwie a za linie biezaca
"aP -- wstawia zawartosc bufora o nazwie a przed linie biezaca
2