Deoarece Vim este axat pe schimbarea codului existent la fel de mult ca și scrierea unui cod nou, acesta este împărțit în mai multe moduri, fiecare având scopuri diferite.

Mod normal

În mod implicit, Vim pornește în modul „normal”. Modul normal poate fi accesat din alte moduri apăsând Esc sau <C-[>.

În modul normal, apăsarea tastelor nu funcționează așa cum ne-am aștepta. Adică nu inserează text în document; în schimb, anumite apăsări de taste pot:

Mutați cursorul

  • h mutați un personaj la stânga
  • j mutați un rând în jos
  • k mutați un rând în sus
  • l mutați un personaj la dreapta

La fel de multe comenzi vim, mișcarea rândurilor poate fi prefixată de un număr pentru a muta liniile eterne la un moment dat:

  • 4j deplasați 4 rânduri în jos
  • 6k mutați 6 rânduri în sus

Mișcări de bază ale cuvintelor:

ad-banner
  • w treceți la începutul cuvântului următor
  • b treceți la începutul anterior al cuvântului
  • e trece la sfârșitul cuvântului
  • W treceți la începutul cuvântului următor după un spațiu alb
  • B treceți la începutul cuvântului anterior înainte de un spațiu alb
  • E treceți la sfârșitul cuvântului în fața unui spațiu alb

Începutul / sfârșitul mișcării liniei:

  • 0 mutați la începutul liniei
  • $ mutați la sfârșitul liniei

Manipulați textul

Introduceți alte moduri

Mod normal este locul unde ar trebui să-și petreacă cea mai mare parte a timpului în timp ce utilizați Vim. Amintiți-vă, acesta este ceea ce îl face pe Vim diferit.

În modul normal, există mai multe moduri de a vă deplasa în jurul unui fișier deschis. Pe lângă utilizarea tastelor cursor pentru a vă deplasa, puteți utiliza h (stânga), j (jos), k (sus si l (dreapta) să te miști și tu. Acest lucru ajută în special la dactilografii cărora nu le place să părăsească rândul de acasă atunci când fac modificări.

De asemenea, puteți efectua modificări caracterelor individuale în modul normal. De exemplu, pentru a înlocui un singur caracter, deplasați cursorul peste el și apăsați r, și apoi personajul cu care doriți să îl înlocuiți. În mod similar, puteți șterge caractere individuale deplasând cursorul peste el și apăsând x.

Pentru a efectua o anulare, apăsați u în modul normal. Aceasta anulează modificările până la ultima dată când ați fost în modul normal. Dacă doriți să refaceți (adică, anulați anularea) apăsați Ctrl+r în modul normal.

Mod inserare

Acesta este al doilea mod cel mai utilizat și va fi cel mai familiar comportament pentru majoritatea oamenilor. Odată ajuns în modul de inserare, tastarea inserează caractere la fel ca un editor de text obișnuit. Puteți să o introduceți utilizând o comandă de inserare din modul normal.

Comenzile de inserare includ:

  • i pentru ‘eunsert ‘, aceasta comută imediat vim în modul inserare
  • a pentru ‘Append ‘, aceasta mută cursorul după caracterul curent și intră în modul inserare
  • o introduce o nouă linie sub linia curentă și intră în modul de inserare pe linia nouă

Aceste comenzi au și o varietate cu majuscule:

  • I deplasează cursorul la începutul liniei și intră în modul inserare
  • A deplasează cursorul la sfârșitul liniei și intră în modul inserare
  • O introduce o nouă linie deasupra celei curente și intră în modul de inserare pe noua linie

Există atât de multe alte modalități de a insera text în Vim care nu pot fi listate aici, dar acestea sunt cele mai simple. De asemenea, aveți grijă să rămâneți în modul inserare prea mult timp; Vim nu este conceput pentru a fi folosit tot timpul în modul insert.

Pentru a părăsi modul de inserare și a reveni la modul normal, apăsați Esc sau <C-[>

Mod vizual

Modul vizual este utilizat pentru a face selecții de text, similar cu modul în care se comportă clicul și glisarea cu mouse-ul. Selectarea textului permite comenzilor să se aplice numai selecției, cum ar fi copierea, ștergerea, înlocuirea și așa mai departe.

Pentru a face o selecție de text:

  • presa v pentru a intra în modul vizual, acest lucru va marca și un punct de selecție de pornire
  • Mutați cursorul la punctul de selecție final dorit; vim va oferi un punct culminant vizual al selecției textului

Modul vizual are, de asemenea, următoarele variante:

  • V pentru a intra în modul linie vizuală, acest lucru va face selecții de text după linie
  • <C-V> pentru a intra în modul bloc vizual, acest lucru va face selecții de text pe blocuri; deplasarea cursorului va face selecții dreptunghiulare ale textului

Pentru a părăsi modul vizual și a reveni la modul normal, apăsați Esc sau <C-[>.

Modul vizual are de fapt mai multe subtipuri: vizual, bloc-vizual și liniar-vizual

  • vizual: așa cum este descris mai sus. Intrați apăsând v
  • bloc-vizual: selectați orice regiune dreptunghiulară. Intrați apăsând <ctrl>+v
  • liniar-vizual: selectați întotdeauna linii complete. Intrați apăsând <shift>+v

Mod de comandă

Modul de comandă are o mare varietate de comenzi și poate face lucruri pe care modul normal nu le poate face la fel de ușor. Pentru a intra în modul de comandă tastați „:” din modul normal și apoi tastați comanda care ar trebui să apară în partea de jos a ferestrei. De exemplu, pentru a face o căutare globală și a înlocui tipul :%s/foo/bar/g pentru a înlocui toate ‘foo’ cu ‘bar’

  • : Intră în modul de comandă
  • % Înseamnă peste toate liniile
  • s Înlocuiește mijloacele
  • /foo este regex pentru a găsi lucruri de înlocuit
  • /bar/ este regex pentru a înlocui lucrurile cu
  • /g înseamnă global, altfel s-ar executa o singură dată pe linie

Vim are o serie de alte metode despre care puteți citi în documentația de ajutor, :h sau :help.

Înlocuiți modul

Modul Înlocuire vă permite să înlocuiți textul existent tastând direct deasupra acestuia. Înainte de a intra în acest mod, intrați în modul normal și puneți cursorul deasupra primului caracter pe care doriți să îl înlocuiți. Apoi apăsați „R” (R majusculă) pentru a intra în modul de înlocuire. Acum, orice introduceți va înlocui textul existent. Cursorul trece automat la următorul caracter la fel ca în modul inserare. Singura diferență este că fiecare caracter pe care îl tastați îl va înlocui pe cel existent.