Het meest essentiele weet je nu : hoe een stuk text te maken en op te slaan en hoe je een bestand moet maken cq openen. Er zijn natuurlijk nog veel meer dingen die je wilt doen, bijvoorbeeld een stuk text kopieren of verwijderen. Voordat ik je iets vertel over kopieren, moet je het volgende weten. Let wel : het stukje over buffers is eigenlijk bedoelt voor iemand die al weet hoe je moet kopieren en dergelijke. Laat je dus hier niet door van de wijs brengen en sla dit deel desnoods over.
Als je tekst kopieert, dan wordt deze tekst tijdelijk ergens opgeslagen. Dit ergens wordt een buffer genoemd, een stukje geheugen. Trouwens, ook tijdens het schrijven van text wordt deze tekst ook in een buffer opgeslagen totdat je het geschrevene opslaat op bijvoorbeeld je schijf en je de editor verlaat. Vi kent 27 buffers, waarvan er eentje de zogenaamde onbenoemde buffer is oftewel de buffer die gebruikt wordt als jij niet opgeeft welke buffer er gebruikt moet worden. Je kunt zelf opgeven, als je dit wilt, naar welke buffer iets geplaats moet worden. Laat je hierdoor niet van de wijs brengen; ook als je dit niet doet dan is er niks aan de hand. VI gebruikt dan gewoon de "standaard" buffer.
Zoals ik al zei, kent vi 27 buffers. De eerste is de "default" buffer en die gebruik je als je verder niks opgeeft. Wil je nu een andere buffer gebruiken dan kun je dit doen middels de letters van het alfabet. Dus de letter "a" staat voor buffer a enzovoorts. Als je dus iets in buffer a wilt plaatsen, bijvoorbeeld iets wat je wilt kopieren, dan doe je dit als volgt:
"a2yy
Bovenstaand voorbeeld houdt in dat je twee regels naar de buffer a kopieerd. Let op het teken ". Dit betekent dat de inhoud van buffer a overschreven mag worden. Als je in plaats van het overschrijven van de buffer een aantal regels aan het eind van de buffer wilt plaatsen, dan moet je de hoofdletter A gebruiken in plaats van de kleine letter a, dus zo:
"A2yy
Overigens : deze commando's zijn natuurlijk niet zichtbaar als je ze gebruikt. Let dus goed op wat je doet!
Goed, back to basic. Stel, je wilt een aantal regels kopieren. De tekst die je hebt ziet er zo uit:
Dit is de eerste regel
Dit is een andere regel
Tja, weer een andere regel, t wordt een beetje saai zo
Als je nu de eerste regel wilt kopieren en na de laatste regel wilt plaatsen, ga dan met je cursor op de eerste regel staan op de letter D van Dit en druk twee keer op de toets van je toestenbord waar het teken y op staat. Deze y staat in dit geval voor yank, oftewel kopieer. Het commando wat je dus geeft is : yy
Ga nu naar de laatste regel, dus ga op de laatste regels staan en paste de text met het commando p. Bedenk hierbij dat dit commando's zijn die je in de command modus uit moet voeren waarbij geen : of / teken gebruikt hoeft te worden. Bedenk ook dat het pasten van text gebeurt na de regel waarop je staat. Voordat je tekst paste moet je natuurlijk wel de command modus actief hebben, denk daarom!
Als het goed is zal de text er nu als volgt uitzien:
Dit is de eerste regel
Dit is een andere regel
Tja, weer een andere regel, t wordt een beetje saai zo
Dit is de eerste regel
Het deleten van tekst doe je eenvoudig met met het dd commando. Ook hier weer geldt dat je meerdere regels kunt verwijderen door een getal, bijvoorbeeld 3 om drie regels te verwijderen, op te geven voor het dd commando.
Knippen en plakken van tekst werkt op dezelfde manier als kopieren en plakken met de uitzondering van het gebruikte knip commando. Het klinkt misschien gek, maar om te knippen kun je het delete commando, dd, gebruiken. Wat er eigenlijk gebeurt bij het deleten van tekst is dat deze in een buffer opgeslagen wordt, immers je kunt verwijderen ook weer ongedaan maken dus ergens moet deze tekst nog aanwezig zijn. Dus een regel, of meerdere regels, kun je met het paste (p) commando op een andere plaats in de tekst zetten. Knippen en plakken zogezegd.
In deze paragraaf zijn de verschillende commando's behandeld om hele regels te knippen kopieren en dergelijke. Je kunt ook bijvoorbeeld een woord kopieren en knippen. In plaats van de dubbele aanduiding yy of dd plaats je op de eerste positie van het commando de letter w van woord (eigenlijk word want het is natuurlijk engels) dus :
yw
betekent het kopieren van een woord en
dw
betekent dat je een woord wilt verwijderen.