/[gentoo]/xml/htdocs/doc/nl/vi-guide.xml
Gentoo

Contents of /xml/htdocs/doc/nl/vi-guide.xml

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.6 - (show annotations) (download) (as text)
Fri Jun 10 20:06:58 2005 UTC (13 years ago) by swift
Branch: MAIN
Changes since 1.5: +17 -16 lines
File MIME type: application/xml
Adhere to DTD

1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <!-- $Header$ -->
4
5 <!--
6 English doc rev 1.8
7 -->
8
9 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
10 <guide link = "/doc/nl/vi-guide.xml">
11 <title>vi leren -- de cheatsheet methode</title>
12 <author title="Author"><mail link="drobbins@gentoo.org">Daniel Robbins</mail></author>
13 <author title="Author"><mail link="stocke2@gentoo.org">Eric Stockbridge</mail></author>
14 <author title="Translator"><mail link="swift@gentoo.org">Sven Vermeulen</mail></author>
15 <abstract>
16 Deze handleiding zal je uitleggen hoe je vi leert gebruiken met een cheatsheet
17 zodat je snel je commando's kan terugvinden. Deze handleiding is bedoelt voor
18 vi-beginners.
19 </abstract>
20
21 <version>1.1.2</version>
22 <date>4 Oktober 2003</date>
23
24 <chapter>
25 <title>Erin vliegen</title>
26 <section>
27 <title>Inleiding</title>
28 <body>
29 <p>
30 Deze tutorial zal je uitleggen hoe je vi, een zeer krachtige editor, kan
31 gebruiken. Door gebruik te maken van een krachtige cheatsheet zal je wat je
32 leert niet snel vergeten en kan je toch snel veel zaken van vi aanleren. In
33 deze tutorial zullen we je leren navigeren, tekst aanpassen, insert mode
34 gebruiken, kopieren en plakken van tekst, alsook belangrijke vim-extensies
35 zoals multi-window editing.
36 </p><p>
37 Indien je niet echt zeker bent van jezelf of je bent nog niet echt gewend om
38 met vi te werken, dan ben je het jezelf verschuldigd om deze tutorial te lezen
39 om snel met een van de meest populaire en krachtige Linux/UNIX editors te
40 kunnen werken.
41 </p>
42
43 </body>
44 </section>
45 <section>
46 <title>Over de handleiding</title>
47 <body>
48 </body>
49 </section>
50 <section>
51 <title>VI snel leren</title>
52 <body>
53 <p>
54 Er is 1 ding dat vi zeer moeilijk maakt te leren -- vi heeft veeel commando's.
55 Om vi efficient te gebruiken dien je er best enkele van buiten te kennen. Dit
56 kan lang duren, en een van de doelen van deze handleiding is om niet al te veel
57 van je tijd in te nemen. Dus, eerste uitdaging: hoe zorgen we ervoor dat je
58 snel en efficient de commando's kan terugvinden zonder ze direct vanbuiten te
59 blokken?
60 </p>
61 <p>
62 Om deze uitdaging tot een goed einde te brengen gaan we een cheatsheet
63 aanmaken. Deze bevat alle belangrijke vi-commando's. Nadat je deze tutorial
64 gelezen en uitgevoerd hebt zal je van deze cheatsheet kunnen gebruik maken om
65 vergeten commando's terug te vinden. Naarmate je de commando's meer en meer
66 gebruikt zal je minder en minder afhankelijk worden van de cheatsheet. Door
67 deze methode leer je dus snel efficient werken met vi!
68 </p>
69 </body>
70 </section>
71 <section>
72 <title>Het leerproces</title>
73 <body>
74
75 <p>
76 In deze handleiding zal ik verschillende technieken gebruiken om je te helpen
77 leren. Allereerst zal ik uitleggen hoe een specifiek commando werkt (dit is
78 nogal wiedes :). Daarna zal ik je vragen om het commando in vi uit te testen
79 (praktijkervaring, zeer belangrijk) en daarna moet je iets op je cheatsheet
80 schrijven (voor toekomstig hergebruik). Indien je vi snel wil leren is het
81 belangrijk dat je al deze stappen uitvoert. Een commando proberen in vi en
82 neerschrijven zal je helpen in het memorizeren van het commando.
83 </p>
84 </body>
85 </section>
86 <section>
87 <title>Inleiding vim</title>
88 <body>
89
90 <p>
91 Er zijn verschillende vi-versies, en ik zal je uitleggen hoe je met 1
92 specifieke versie moet werken, namelijk "vim". Vim is zeer populair en heeft
93 enkele extraatjes die vi heel wat leuker maken (wanneer ik een vim-specifiek
94 commando demonstreer zal ik dat wel zeggen). Indien je vim nog moet
95 installeren: je kan deze vinden op
96 <uri link="http://www.vim.org">www.vim.org</uri>. Er is tevens
97 gvim, een mooie grafische editor die net als vim werkt, maar dan met een mooie
98 GTK+ grafische interface. Hier is er een gvim screenshot van de auteur:
99 </p>
100
101 <figure link="http://www.ibiblio.org/web-gentoo/images/vishot.png" short="screenshot" caption="VIM screenshot"/>
102
103 <p>
104 Indie je een vi newbie bent, probeer dan gvim op je systeem. Het gebruiken van
105 vi via een GUI kan de moeilijkheidsgraad verlagen.
106 </p>
107
108 </body>
109 </section>
110 </chapter>
111 <chapter>
112 <title>Eerste stappen</title>
113 <section>
114 <title>Kies een bestand</title>
115 <body>
116 <p>
117 Alvorens je vi leert gebruiken om bestanden aan te passen is het belangrijk te
118 weten hoe je onder vi in een bestand navigeert. Vi heeft veel
119 bewegingscommando's, en we gaan er een groot deel van bespreken. Voor dit deel
120 van de tutorial zoek je best een onbelangrijk tekstbestand en laadt het in via
121 vi door het volgende in te typen:
122 </p>
123 <pre>
124 $ vi myfile.txt
125 </pre><p>
126 Indien je vim geinstalleerd staan hebt, type dan "vim myfile.txt". Indien je
127 liever gvim gebruikt, type je "gvim myfile.txt". myfile.txt moet uiteraard de
128 naam zijn van dat onbelangrijk tekstbestand.
129 </p>
130 </body>
131 </section>
132
133 <section>
134 <title>Binnenin vi</title>
135 <body>
136
137 <p>
138 Nadat vi geladen is zal je een deel van je tekstbestand zien op je scherm.
139 Proficiat, je bent in vi. In tegenstelling tot veel editors start vi in wat de
140 "command mode" heet. Dat wil zeggen dat indien je "l" indrukt op je keyboard,
141 dat dan geen "l" in je tekstbestand wordt gestoken, maar dat de cursor 1
142 karakter naar rechts zal verschuiven. In command mode zijn de karakters die je
143 ingeeft de commando's die je aan vi geeft, dit in tegenstelling tot de meeste
144 editors waar de karakters direct aanpassingen veroorzaken in het tekstbestand.
145 Een van de meest essentiele types van commando's zijn navigatiecommando's.
146 Laten we er eens enkele bekijken:
147 </p>
148
149 </body>
150 </section>
151 </chapter>
152 <chapter>
153 <title>Rondhuppelen</title>
154 <section>
155 <title>Rondhuppelen in vi, deel 1</title>
156 <body>
157
158 <p>
159 Wanneer je in command mode bent kan je de <c>h</c>, <c>j</c>, <c>k</c> en
160 <c>l</c> gebruiken om je cursor links, lager, hoger of rechts plaatsen. De
161 <c>h</c>, <c>j</c>, <c>k</c> en <c>l</c> toetsen zijn handig omdat, wanneer je
162 ze gewend bent, je zeer snel kan navigeren aangezien je je handpalm niet moet
163 verleggen. Gebruik <c>h, j, k</c> en <c>l</c> nu om in je tekstbestand te
164 navigeren. Bemerk dat vi je niet toelaat om naar de vorige regel te springen
165 indien je <c>h</c> indrukt terwijl je op het eerste karakter van een zin staat.
166 Uiteraard zal tevens <c>l</c> niet naar een nieuwe regel springen indien je op
167 het einde van een zin staat.
168 </p>
169
170 </body>
171 </section>
172 <section>
173 <title>Rondhuppelen in vi, deel 2</title>
174 <body>
175
176 <p>
177 vi levert speciale shortcuts voor het springen naar het begin en einde van een
178 regel. Je kan <c>0</c> (nul) indrukken om naar het begin te vliegen, en
179 <c>$</c> voor het einde. Probeer maar. Aangezien vi nog meer van deze leuke
180 zaken heeft is het een zeer handige "pager" (zoals less en more). Indien je vi
181 instelt als je pager zal je nog sneller al zijn navigatiecommando's leren.
182 </p>
183
184 <p>
185 Je kan tevens <c>&lt;CTRL&gt;-F</c> en <c>&lt;CTRL&gt;-B</c> gebruiken om een
186 volledige pagina verder respectievelijk terug te gaan. Moderne versies van vi
187 (zoals vim) laten je tevens toe PGUP en PGDOWN te gebruiken.
188 </p>
189
190 </body>
191 </section>
192 <section>
193 <title>Woordgoochelen, deel 1</title>
194 <body>
195 <p>
196 vi laat toe dat je links en rechts navigeert, woord per woord. Om naar het
197 eerste karakter van het volgende woord te gaan, druk <c>w</c>. Om naar het
198 laatste karakter van het volgende woord te gaan, druk <c>e</c>. Om naar het
199 eerste karakter van het <c>voorgaande</c> woord te gaan, druk <c>b</c>. Zeker
200 uitproberen!
201 </p>
202 </body>
203 </section>
204
205 <section>
206 <title>Woordgoochelen, deel 2</title>
207 <body>
208 <p>
209 Nadat je met deze commando's wat zitten spelen hebt zal je merken dat vi
210 woorden zoals "foo-bar-oni" als 5 aparte woorden interpreteert! Dit is per
211 default aangezien vi woorden onderscheidt tussen spaties <c>of</c> punctuatie.
212 foo-bar-oni is dus een 5-woorden-term: "foo", "-", "bar", "-" en "oni".
213 </p>
214 <p>
215 Soms is dit wat je wil, soms ook niet. Gelukkig herkent vi ook het concept van
216 "grote woorden". vi onderscheidt grote woorden enkel door <c>spaties of nieuwe
217 regels</c>. Dit wil zeggen dat, terwijl foo-bar-oni als een 5-woorden-vi-term
218 gezien wordt, het maar 1 vi-groot-woord is.
219 </p>
220
221 </body>
222 </section>
223 <section>
224 <title>Woordgoochelen, deel 3</title>
225 <body>
226 <p>
227 Om tussen de vorige en volgende grote woorden te navigeren moet je dezelfde
228 commando's gebruiken, maar dan in <c>hoofdletters</c>. Dus <c>W</c> om naar het
229 eerste karakter van het volgende woord te gaan, <c>E</c> voor het laatste
230 karakter van het volgende woord, en <c>B</c> voor het eerste karakter van het
231 voorgaande grote woord.
232 </p>
233
234
235 </body>
236 </section>
237 <section>
238 <title>Andere bewegingen</title>
239 <body>
240 <p>
241 Er zijn nog enkele andere leuke commando's die je zeker moet kennen alvorens je
242 je cheatsheet opstelt. Je kan de <c>(</c> en <c>)</c> karakters gebruiken om
243 naar het begin van de volgende respectievelijk vorige regel te gaan.
244 Daarbij kan je tevens <c>{</c> en <c>}</c> gebruiken om naar het begin van de
245 volgende respectievelijk vorige paragraaf te gaan.
246 </p>
247
248 </body>
249 </section>
250 </chapter>
251 <chapter>
252 <title>Afsluiten</title>
253 <section>
254 <title>Afsluiten</title>
255 <body>
256 <p>
257 Nu je weet hoe je moet navigeren, zijn er nog enkele andere commando's die zeer
258 belangrijk zijn. Gebruik <c>:q</c> om vi af te sluiten. Indien dat niet werkt,
259 dan heb je waarschijnlijk het bestand (per ongeluk) aangepast. Om vi te
260 forceren af te sluiten, zonder de aanpassingen op te slaan, type je <c>:q!</c>.
261 Je zou jezelf nu weer op de prompt moeten bevinden.
262 </p>
263
264 <p>
265 In vi zijn de commando's die beginnen met ":" zogenaamde <c>ex-mode</c>
266 commando's. Dit is omdat vi een ingebouwde niet-visuele editor bevat, genaamd
267 <e>ex</e>. Deze kan gebruikt worden, net zoals sed, om regel-aanpassing
268 operaties uit te voeren. Zoals je dus al zag kan het tevens gebruikt worden om
269 vi af te sluiten. Indien je ooit <c>Q</c> slaat terwijl je in commando-mode
270 zit, dan zal je naar de ex-mode gaan. Indien dat ooit gebeurt zal je door een
271 ":"-prompt begroet worden. Door enter te slaan zal je een volledig scherm terug
272 gescrolled worden. Om naar de goede oude vi-mode over te gaan, type gewoon vi
273 en druk enter.
274 </p>
275
276 </body>
277 </section>
278 </chapter>
279 <chapter>
280 <title>De cheatsheet</title>
281 <section>
282 <title>De beginselen van de cheatsheet</title>
283 <body>
284 <p>
285 We hebben al een aardig aantal commando's bekeken, en dus is het tijd om ze te
286 noteren op onze cheatsheet. Je neemt best een A4'tje aangezien we veel
287 informatie zullen neerschrijven. Hier is er een afbeelding van de auteur zijn
288 cheatsheet waarop al bovenstaande commando's staan. Probeer dezelfde layout te
289 gebruiken zodat we alles op 1 papiertje kunnen plaatsen.
290 </p>
291
292 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-first.png" short="Eerste deel van de cheatsheet" caption="Cheatsheet"/>
293
294 </body>
295
296 </section>
297 <section>
298 <title>Vanalles van vi</title>
299
300 <body>
301 <p>
302 Laten we verder doen. In commando-mode kan je naar een specifieke regel
303 springen door <c>G</c> te typen. Om naar de allereerste regel te gaan, type
304 <c>1G</c>. Merk op dat de <c>G</c> een hoofdletter is.
305 </p>
306 <p>
307 Indien je naar de eerstvolgende string wil gaan die voldoet aan een bepaalde
308 reguliere expressie, type <c>/&lt;regexp&gt;</c> en druk op <c>enter</c>.
309 Vervang &lt;regexp&gt; met de reguliere expressie waarnaar je op zoek bent.
310 Indien je niet weet hoe je regexps moet ingeven moet je niet panikeren --
311 <c>/foo</c> zal zoeken naar de eerstvolgende "foo". Het enige waarvoor je
312 moet oppassen is het zoeken naar een van de volgende karakters: <c>^.$\</c>.
313 Deze moet je escapen (een backslash voor plaatsen). Bijvoorbeeld
314 <c>/foo\.gif</c> zal zoeken naar de eerste <c>foo.gif</c> vanaf de positie dat
315 je cursor nu staat.
316 </p>
317 <p>
318 Om de voorwaardse zoektocht te herhalen, druk op <c>n</c>. Om achterwaarts
319 te zoeken, type <c>N</c>. Zoals altijd is het belangrijk dat je deze zaken nu
320 test. Je kan tevens <c>//</c> typen om de laatste zoekopdracht te herhalen.
321 </p>
322
323 </body>
324 </section>
325 </chapter>
326 <chapter>
327 <title>Opslaan en Aanpassen</title>
328 <section>
329 <title>Opslaan en Opslaan Als...</title>
330 <body>
331 <p>
332 We hebben gezien hoe je het <c>ex</c> commando <c>:q</c> kan gebruiken om vi af
333 te sluiten. Indien je je aanpassingen wil opslaan, type <c>:w</c>. Indien je je
334 aanpassingen in een ander bestand wil opslaan, type <c>:w bestandsnaam</c> om
335 deze op te slaan als <e>bestandsnaam</e>. Indien je wil opslaan en afsluiten,
336 type <c>:x</c> of <c>:wq</c>.
337 </p>
338 <p>
339 In vim (en andere geavanceerde vi-editors, zoals elvis) kan je meerdere buffers
340 open staan hebben. Om een bestand in een nieuwe window te openen, type <c>:sp
341 bestandsnaam</c>. <e>bestandsnaam</e> zal klaar staan om aan te passen in een
342 split window. Om tussen deze windows te switchen type je <c>&lt;CTRL&gt;-w
343 &lt;CTRL&gt;-w</c> (dus 2 keer na elkaar control-w). De commando's <c>:q</c>,
344 <c>:q!</c> en <c>:x</c> werken enkel op de actieve window.
345 </p>
346 </body>
347 </section>
348
349 <section>
350 <title>Eenvoudige aanpassingen</title>
351 <body>
352 <p>
353 Nu is het tijd om enkele eenvoudige edit-commando's te leren. Ik noem ze simpel
354 omdat de commando's je in commando-mode houden. De meer complexe commando's
355 zullen je vanzelf in insert-mode steken -- een modus waardoor je rechtstreeks
356 het bestand kan aanpassen. Deze zullen we later behandelen.
357 </p>
358
359 <p>
360 Ga met je cursor over enkele karakters en druk <c>x</c> in. Je zal zien dat
361 <c>x</c> het karakter onder de cursor verwijdert. Ga nu naar het midden van een
362 paragraaf en druk <c>J</c>. Je zal zien dat <c>J</c> de volgende paragraaf aan
363 het eind van de huidige paragraaf plakt. Druk nu eens <c>r</c> terwijl je met
364 je cursor op een karakter staat, en type een nieuw karakter in. Je zal zien dat
365 het karakter vervangen wordt met het nieuwe karakter. Ga nu naar een bepaalde
366 regel en druk <c>dd</c>. Je zal zien dat deze de huidige regel verwijdert.
367 </p>
368
369 </body>
370 </section>
371 <section>
372 <title>Herhalen en Verwijderen</title>
373 <body>
374 <p>
375 Je kan eender welk commando herhaaldelijk uitvoeren door de <c>.</c> in te
376 drukken. Indien je experimenteert zal je merken dat <c>dd...</c> 4 regels zal
377 verwijderen, en <c>J......</c> zal 4 regels aan elkaar hangen. Uiteraard heeft
378 vi een snellere manier voor deze zaken :)
379 </p>
380 <p>
381 Om tekst te verwijderen kan je tevens het <c>d</c> commando gevolgd door een
382 navigatiecommando uitvoeren. Bijvoorbeeld <c>dw</c> zal alle tekst verwijderen
383 vanaf de huidige positie tot aan het begin van het bestand; <c>d)</c> zal alle
384 tekst verwijderen tot aan het eind van de volgende zin, en <c>d}</c> zal de
385 rest van de paragraaf verwijderen. Experimenteer et het <c>d</c> commando en de
386 andere edit-commando's totdat je ze allemaal onder de knie hebt.
387 </p>
388 </body>
389 </section>
390 <section>
391 <title>Ongedaan maken</title>
392 <body>
393 <p>
394 Nu dat we bezig zijn met verwijdercommando's is het een goed moment om te leren
395 hoe je aanpassingen ongedaan maakt. Door <c>u</c> te drukken kan je je laatste
396 commando ongedaan maken. Moderne versies van vi, zoals vim, laten je toe om
397 meerdere commando's ongedaan te maken door herhaaldelijk op <c>u</c> te
398 drukken. Probeer ze zeker uit.
399 </p>
400 </body>
401 </section>
402
403 <section>
404 <title>De cheatsheet updaten</title>
405 <body>
406 <p>
407 Het is tijd om de cheatsheet up te daten. Na het toevoegen van alle geziene
408 commando's zal je papier er als volgt kunnen uitzien:
409 </p>
410
411 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-edit.png" short="Cheat sheet" caption="Cheatsheet met editing-commando's"/>
412
413 </body>
414 </section>
415 </chapter>
416 <chapter>
417 <title>Insert mode</title>
418 <section>
419 <title>Insert mode</title>
420
421 <body>
422 <p>
423 Tot nu toe hebben we geleerd om met vi te navigeren, bestanden te manipuleren,
424 en basis editing commando's uit te voeren. Ik heb je echter nog niet uitgelegd
425 hoe je gewoon tekst in je bestand kan zetten! Dit is met opzet, aangezien vi's
426 insert mode ietswat ingewikkeld is in het begin. Maar eenmaal je gewend bent
427 met deze modus zal je zijn complexiteit (en flexibiliteit) zeker waarderen.
428 </p>
429 <p>
430 In vi insert modus kan je tekst aanpassen en invoegen zoals je bij de meeste
431 andere editors kan doen. Eenmaal je je aanpassingen gemaakt hebt kan je escape
432 drukken om terug te keren naar commandomodus. Je kan naar insert modus gaan
433 door <c>i</c> of <c>a</c> in te drukken. Indien je <c>i</c> drukt zal je tekst
434 voor het geselecteerde karakter komen, terwijl dat bij <c>a</c> erachter is.
435 Je kan dit eenvoudig onthouden door <e>insert</e> respectievelijk <e>append</e>
436 te denken. Vergeet niet om <c>&lt;Esc&gt;</c> te drukken om terug te keren naar
437 de commando modus.
438 </p>
439 </body>
440 </section>
441 <section>
442 <title>Voordelen van insert mode</title>
443 <body>
444 <p>
445 Probeer de <c>i</c> en <c>a</c> commando's uit. Type wat tekst en ga terug naar
446 de commando mode. Druk op <c>&lt;Enter&gt;</c> nadat je <c>a</c> of <c>i</c>
447 getypt hebt en let op wat er gebeurt. Probeer de pijltjes van je keyboard en de
448 <c>&lt;DEL&gt;</c> toets om te weten te komen hoe de insertmodus werkt. Door de
449 pijltjestoetsen en delete-toets te gebruiken kan je verschillende edit-stappen
450 uitvoeren zonder telkens de insertmode te verlaten.
451 </p>
452 </body>
453 </section>
454 <section>
455 <title>Insert opties</title>
456 <body>
457 <p>
458 Hier zijn er enkele andere interessante methoden om in insertmode te geraken.
459 Druk <c>A</c> om aan het <e>eind</e> van de regel te starten. <c>I</c> zal dan
460 aan het begin van de regel starten. Druk <c>o</c> om een nieuwe, blanco regel
461 te creeren net onder de huidige regel, en <c>O</c> om een blanco regel boven de
462 huidige regel te maken. Om de ganse regel met een nieuwe regel te vervangen,
463 druk <c>cc</c>. Om alles vanaf de huidige positie tot het eind van de regel te
464 vervangen, druk <c>c$</c>. Om alles vanaf de huidige positie tot het begin van
465 de regel te vervangen, druk <c>c0</c>.
466 </p>
467 <p>
468 Al bovenstaande commando's zullen je in insert-modus plaatsen. Druk op escape
469 om de insertmodus te verlaten.
470 </p>
471
472 </body>
473 </section>
474 <section>
475 <title>Tekst aanpassen</title>
476 <body>
477 <p>
478 We hebben het <c>c</c> (change) commando al een beetje gebruikt in de
479 commando's <c>cc, c0, c$</c>. <c>cc</c> is een speciaal commando, gelijkaardig
480 aan <c>dd</c>. De andere commando's zijn voorbeelden van het gebruiken van het
481 <c>c</c> commando met navigatiecommando's. Het is dus geheel gelijkaardig aan
482 het <c>d</c> commando, behalve dat het de gebruiker daarna in insertmodus
483 plaatst. Probeer enkele commando's te combineren en test ze uit op je bestand
484 (hint: <c>cW</c>, <c>ce</c>, <c>(</c>.)
485 </p>
486
487 </body>
488 </section>
489 </chapter>
490 <chapter>
491 <title>Combinatie Commandos</title>
492 <section>
493 <title>Combinatie Commandos</title>
494 <body>
495 <p>
496 Vi wordt pas <e>enorm</e> krachtig indien je begint met combinaties te
497 creeeren, zoals <c>d{</c> en <c>cw</c>. Daarbij kan je een nummer plaatsen,
498 zoals <c>3w</c>, waardoor vi 3 woorden naar rechts zal springen. Hier zijn nog
499 enkele combinatie-voorbeeldcommando's: <c>12b</c>, <c>4j</c>.
500 </p>
501 <p>
502 Behalve het gebruik van nummer-navigatie commando's laat vi tevens toe <c>d</c>
503 en <c>c</c> te combineren met nummers of navigatiecommando's. Dus <c>d3w</c>
504 zal de volgende 3 woorden verwijderen, <c>d2j</c> zal de huidige en de volgende
505 2 regels verwijderen enz. Test verschillende <c>c,d</c>-combinaties uit.
506 Eenmaal je deze onder de knie hebt zal je enorm snel met vi bestanden kunnen
507 manipuleren.
508 </p>
509
510 </body>
511 </section>
512 <section>
513 <title>De cheatsheet updaten</title>
514 <body>
515 <p>
516 Het is weer tijd om de cheatsheet up te daten. De mijne ziet er momenteel als
517 volgt uit:
518 </p>
519
520 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-compound.png" short="Cheat Sheet" caption="Cheatsheet met combinaties"/>
521
522 </body>
523 </section>
524 <section>
525 <title>Productivity features</title>
526
527 <body>
528 <p>
529 Tot nu toe hebben we gezien hoe je navigeert, opslaat en afsluit, hoe je
530 eenvoudige aanpassingen en verwijdercommando's ingeeft, en hoe je de insert
531 modus moet gebruiken. Met alle zaken op de cheatsheet moet je nu al gemakkelijk
532 bijna alle gewenste taken met vi kunnen afhandelen.
533 </p>
534 <p>
535 Vi heeft echter nog heel wat meer in zijn mars. In deze sectie zal ik je
536 uitleggen hoe je knipt, kopieert, plakt, zoekt en vervangt, en hoe je de
537 <e>autoindent</e> gebruikt. Deze maken het leven met vi heel wat leuker.
538 </p>
539
540 </body>
541 </section>
542 <section>
543 <title>Visuele modus</title>
544 <body>
545 <p>
546 De beste manier om te knippen, kopieren en plakken is met de visuele modus, een
547 speciale modus die toegevoegd is aan moderne versies van vi, zoals vim. Het is
548 een soort van selecteermodus. Eenmaal de tekst geselecteert is kan je ze
549 knippen, kopieren en plakken. Indien je gvim gebruikt kan je dat uiteraard door
550 gewoonweg met je muis te werken.
551 </p>
552 <figure link="http://www.ibiblio.org/web-gentoo/images/vihighlight.png" short="Highlighted text" caption="VIM met geselecteerde tekst"/>
553
554 </body>
555 </section>
556 <section>
557 <title></title>
558 <body>
559
560 <p>
561 Daarbij kan je tevens in visuele mode gaan door <c>v</c> te drukken (dit is
562 trouwens de enige manier indien je met vim werkt). Door daarna met de cursor te
563 navigeren zal je delen van je tekst selecteren. Eenmaal geselecteert zijn we
564 klaar om te knippen of kopieren.
565 </p>
566
567 <p>
568 Indien je de tekst wil kopieren, druk <c>y</c> (<e>yank</e>). Indien je de
569 tekst knipt, druk <c>d</c>. Je zal teruggesmeten worden naar commandomodus. Ga
570 nu naar de positie waar je de tekst in wil voegen, en druk <c>P</c> om de tekst
571 na de cursor te plaatsen, of <c>p</c> om de tekst voor de cursor te plaatsen.
572 Voila, de knippen/kopieren/plakken is gedaan. Probeer verschillende operaties
573 uit alvorens je verder gaat.
574 </p>
575
576 </body>
577 </section>
578 <section>
579 <title>Tekst Vervangen</title>
580 <body>
581 <p>
582 Om bepaalde expressies van tekst te vervangen gebruiken we de <e>ex</e> modus.
583 Indien je de eerstvolgende expressie op de huidige lijn wil vervangen, type
584 <c>:s/&lt;regexp&gt;/&lt;vervangtekst&gt;/</c> en druk op enter. Hier is
585 &lt;regexp&gt; de expressie die je wil vervangen en &lt;vervangtekst&gt; de
586 tekst waarmee ze vervangen moet worden. Om alle expressies op de huidige lijn
587 te vervangen, gebruik <c>:s/&lt;regexp&gt;/&lt;vervangtekst&gt;/g</c> en druk
588 op enter. Om alle voorkomende expressies in je ganse tekst te vervangen,
589 gebruik <c>:%s/&lt;regexp&gt;/&lt;vervangtekst&gt;/g</c>. Indien je wil dat vi
590 bij elke vervanging vraagt of je wel wil vervangen, zet dan een extra <c>c</c>
591 achteraan: <c>:%s/&lt;regexp&gt;/&lt;vervangtekst&gt;/gc</c>.
592 </p>
593
594 </body>
595 </section>
596 <section>
597 <title>Inspringen</title>
598 <body>
599 <p>
600 vi ondersteunt automatisch inspringen, wat zeer handig is indien je broncode
601 aan het aanpassen bent. De meeste moderne implementaties van vi (zoals vim)
602 zullen vanzelf inspringen indien je broncodebestanden aan het aanpassen bent.
603 Indien deze ingeschakeld is kan je <c>&lt;CTRL&gt;-d</c> gebruiken om 1 niveau
604 in te springen, en <c>&lt;CTRL&gt;-t</c> om 1 niveau lager te gaan. Indien
605 autoindent niet vanzelf aanstaat kan je deze manueel activeren door <e>:set
606 autoindent</e> in te geven in <e>ex</e>-modus. Je kan tevens aan vi vertellen
607 dat je tab-afstand anders moet zijn door <c>:set tabstop</c> te gebruiken.
608 <c>:set tabstop=4</c> is zeer populair.
609 </p>
610
611 </body>
612 </section>
613 <section>
614 <title>Ons finale cheatsheet</title>
615 <body>
616 <p>
617 Voila, we zitten aan het eind van onze tutorial. Na het toevoegen van alle
618 geavanceerde commando's zou de cheatsheet er als volgt uit kunnen zien:
619 </p>
620 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-final.png" short="Cheat Sheet" caption="Finale cheatsheet"/>
621
622
623 <p>
624 Hou dit papiertje in de buurt, en gebruik vi om je bestanden en e-mails te
625 creeren of aan te passen. Gebruik de cheatsheet wanneer je ze nodig hebt; na
626 een weekje of zo zal je bijna alle commando's doorhebben en zal je
627 productiviteit de lucht in schieten.
628 </p>
629
630 </body>
631 </section>
632 <section>
633 <title>Resources</title>
634 <body>
635 <p>
636 Hier zijn er enkele resources die je handig kan vinden indien je nog meer wil
637 te weten komen over vi:
638 </p>
639 <ul>
640 <li><uri link="http://www.thomer.com/thomer/vi/vi.html">The vi Lovers Home
641 Page</uri>, een excellente resource.</li>
642 <li><uri link="http://www.vim.org">The vim homepage</uri>
643 , de plaats voor alles wat vim aanbelangt</li>
644 <li>Indien je op zoek bent naar een goed boek, dan is <uri link="http://www.oreilly.com/catalog/vi6/">Learning the vi Editor, 6th Edition</uri> een excellente
645 keuze, ze omschrijft nl tevens de vi-klonen zoals vim en elvis.</li>
646 </ul>
647 </body>
648 </section>
649
650 <section>
651 <title>Over dit document</title>
652 <body>
653 <p>De originele versie van dit document was eerst gepubliceerd op IBM
654 DeveloperWorks, en is eigendom van Westtech Information Services. Dit document
655 is een aangepaste versie van het origineel, en bevat enkele verbeteringen
656 gemaakt door het Gentoo Linux documentatie team.</p>
657 </body>
658 </section>
659
660 </chapter>
661 </guide>

  ViewVC Help
Powered by ViewVC 1.1.20