vim





tryby

Esc

powrót do trybu ”Normalnego” pracy

pracy

:polecenie

wydawanie poleceń z linii komend

i, a, o, c

przejście do trybu edycji tekstu




obsługa

:q[uit]!, ZQ

wyjście z vim-a bez zapisu

plików

:wq, ZZ

zapisz i wyjdź

:e[dit] plik

otwórz plik

:r[ead] plik

wklej zawartość pliku

:w[rite] [nazwa pliku]

zapisz plik

:f[ile], Ctrl-g

wyświetla informacje o pliku

:f[file] nazwa

zmiana nazwy edytowanego pliku




pomoc

:help

dokumentacja

:help komenda

opis danej komendy




ruch

l, , spacja

znak do przodu

kursora

h, , backspace

znak do tyłu

k,

w górę

j,

w dół

w, W

następne słowo

b, B

poprzednie słowo

0

początek linii

$

koniec linii

return

początek następnej linii

-

początek poprzedniej linii

(

poprzednie zdanie

)

następne zdanie

{

poprzedni akapit

}

następny akapit

H

początek ekranu

M

środek ekranu

L

koniec ekranu

liczba G, :liczba

idź do linii numer liczba




Ctrl-b, PageUp

poprzednia strona

Ctrl-f, PageDown

następna strona




okna

C-w n, :new [plik]

otwiera nowe okno

C-w s, :sp[lit] [plik]

dzieli okno w poziomie

C-w v, :vs[plit] [plik]

dzieli okno w pionie

C-w w

przejście do następnego okna

C-w q, :q[uit]

zamknięcie okna

C-w o, :on[ly]

zamknięcie pozostałych okien




edycja

i

przed kursorem

tekstu

I

od początku linii

a

za kursorem

A

na końcu linii

o

w nowej linii poniżej

O

w nowej linii powyżej




 



usuwanie

d obiekt

usuwa obiekt np. d$ usuwa tekst do końca linii

tekstu

x

usuwa znak, np. 5x usuwa pięć kolejnych znaków

X

usuwa poprzedzający znak

dd

usuwa linię

D

usuwa tekst do końca linii




zamiana

c obiekt

zamienia obiekt, np. c4w zmienia 4 kolejne słowa

tekstu

s

zamiana znaku

cc

zamiana linii

C

zamiana do końca linii

r

zamień literę pod kursorem

R

uruchamia tryb zamiany




kopiuj,

y obiekt

kopiuje do schowka obiekt

wklej

yy

kopiuje linię do schowka (rejestru)

(schowek)

Y

kopiuje tekst do końca linii

p, P

wkleja zawartość schowka (rejestru)




zaznaczanie

v

zaznaczanie tekstu

tekstu

V

zaznaczanie tekstu od początku linii

C-v

zaznaczanie tekstu kolumnami

o

zamiana początku bloku z pozycja kursora




rejestry

:reg[isters]

lista rejestrów

{a-zA-Z0-9} AKCJA

wykonanie danej akcji na rejestrze

np. ”ayw skopiowanie wyrazu do rejestru a




Cofnij

u, U

undo - cofnij ostatnią operację

Ctrl-r

redo - cofnij ostatnie undo




Szukaj

/wyrażenie

szukaj (do przodu)

?wyrażenie

szukaj (do tyłu)

n, N

znajdź następny

%

szuka zamykającego nawiasu




zamień

:[zakres]s/szukane_wyrażenie/zamień_na[/g]

gdzie: zakres - oznacza zakres linii oddzielonych przecinkiem (np. 1,10)
definując zakres możemy użyć znków: $ ostatnia linia, kropka ”.” to aktualna linia, % cały plik (np. .,$ oznacza od aktualnego miejsca do końca pliku)
g - zastąp globalnie (więcej niż raz w linii



znaczniki

m{a-zA-Z}

ustawia znacznik ({a-z} dotyczą bieżącego bufora)

{a-zA-Z}

przesuwa kursor do znacznika oznaczonego daną literą

powrót do poprzedniej pozycji kursora

:marks

lista ustawionych znaczników




powłoka

:sh

uruchomienie powłoki

:!polecenie

wykonanie polecenia powłoki

!!polecenie

rezultat polecenia umieszczany jest w buforze




powtórzenia

liczba AKCJA

np. 6dd usunie sześć kolejnych linii z bufora

.

powtórzenie ostatniej operacji






Tabela 1: Ściąga z vim-a, oznaczenia: obiekt - oznacza jednostkę tekstu określoną w rubryce ruch kursora (np. w - fragment tekstu do następnego słowa), AKCJA - oznacza wykonanie polecenia usuń, skopiuj, wklej itp. na fragmencie tekstu ( np. dw - usuń tekst do konca wyrazu), [zawarość] kwadratowych nawiasów jest opcjonalna (np. :q jest skrótem polecenia :quit co w tabeli zaznaczone jest jako :q[uit])