Het eerste waar je tegen aan loopt als je een vi achtige editor gaat gebruiken zijn de modes. Je kunt niet zomaar tekst in gaan kloppen zoals in andere editors. Er zijn er drie modes:
Command mode - Dit is de modus waarin vim start.
Insert mode - Dit is de modus waarin je tekst in kan kloppen.
Ex mode - Dit is de modus waarin meer geavanceerde commando's gegeven kunnen worden zoals het inlezen van een bestand of het zoeken en vervangen.
Je kunt ten alle tijden terug komen in de command mode door een aantal keren op de ESC knop te drukken. Bij een fervent vi(m) gebruiker zal deze toets ook redelijk kaal zijn, maar dat terzijde.
In command mode kun opdrachten geven. Dit zijn meestal simpele opdrachten die uit 1 of enkele toets aanslagen bestaan. Vanuit de command mode kun je ook in de andere modus komen. Om in de insert of ex mode te komen moet je via de command mode. Vandaar dat de ESC toets nogal vaak gebruikt wordt.
Een paar van de dingen die je in command mode kunt doen zijn:
/tekst - Zoekt naar de string "tekst" vanaf de cursor richting het einde van het document.
?tekst - Zoekt naar de string "tekst" vanaf de cursor richting het begin van het document.
/ - Herhaalt de laatste zoekopdracht richting het einde van het document.
? - Herhaalt de laatste zoekopdracht richting het begin van het document.
x - Verwijder het karakter waar de cursor op staat.
D of d$ - Verwijdert tekst vanaf de cursor tot aan de einde regel markering.
d^ - Verwijdert tekst vanaf het begin van de regel tot aan de cursor.
dd - Verwijdert de gehele regel.
Wat wel grappig is (ik heb een vreemd gevoel voor humor) is dat bijvoorbeeld de zoekopdrachten ook werken in de man pages en tijdens het gebruik van de pager less.
Je komt in de insert mode door een commando te geven in de command mode. De meest gebruikte zijn wel:
i - Je kunt tekst in gaan voeren voor de cursor positie.
a - Je kunt tekst in gaan voeren na de cursor positie.
Het verschil is subtiel, maar soms wel handig.
Je kunt ook met tikken beginnen aan het begin of einde van de regel.
I - Je kunt tekst in gaan voeren aan het begin van de regel.
A - Je kunt tekst in gaan voeren aan het einde van de regel.
NB: Het einde van de regel is de einde regel markering. Wat men ook wel de alinea markering noemt, en niet het einde van een scherm regel.
Je kunt ook een nieuwe regel beginnen vanuit command mode;
o - Je voegt een nieuwe regel toe onder de cursor.
O - Je voegt een nieuwe regel toe boven de cursor.
Let wel op het verschil in case. Je krijgt hele verrassende toestanden indien je niet in de gaten hebt dat je CAPS-LOCK aanstaat.
Hoe je er ook in gekomen bent; in de insert mode kun je tekst toevoegen.
Verder is de insert mode weinig interressant, hoewel je waarschijnlijk de meeste tijd in deze mode door zult brengen. In insert mode kun je verder eigenlijk naast tekst inkloppen alleen maar met de cursor knoppen door de tekst navigeren.
Je komt weer in command mode door op ESC te drukken.
In ex mode kom je door op de : te drukken. De cursor komt vervolgens in de onderste regel te staan waar je vervolgens meer complexe ex opdrachten in kunt kloppen.
In het volgende hoofdstuk ga ok in op een van de meest belangrijke commando's die je hier kunt geven; het afsluiten van VIM