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

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

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.9 - (hide annotations) (download) (as text)
Sat Nov 15 00:35:19 2003 UTC (10 years, 9 months ago) by neysx
Branch: MAIN
Changes since 1.8: +1 -0 lines
File MIME type: application/xml
Added $Header$ cvs tag -- NO CONTENT CHANGE

1 swift 1.8 <?xml version="1.0" encoding="UTF-8"?>
2 neysx 1.9 <!-- $Header$ -->
3 swift 1.8 <!DOCTYPE guide SYSTEM "/dtd/guide.dtd">
4    
5 zhen 1.2 <guide link = "/doc/en/vi-guide.xml">
6 drobbins 1.1 <title>Learning vi -- the "cheatsheet" technique</title>
7     <author title="Author"><mail link="drobbins@gentoo.org">Daniel Robbins</mail></author>
8     <author title="Author"><mail link="stocke2@gentoo.org">Eric Stockbridge</mail></author>
9 bennyc 1.7 <author title="Editor"><mail link="bennyc@gentoo.org">Benny Chuang</mail></author>
10 drobbins 1.1 <abstract>This guide will teach you how to use vi, using a cheat sheet method to accelerate the learning process. This will be the first guide for vi, catering to beginners.</abstract>
11 bennyc 1.7 <version>1.1.2</version>
12 swift 1.8 <date>October 4, 2003</date>
13 drobbins 1.1
14     <chapter>
15     <title>Getting Started</title>
16     <section>
17     <title>Introduction</title>
18     <body>
19     <p>
20 vapier 1.5 This tutorial will show you how to use vi, a powerful visual editor. Using a
21 drobbins 1.1 special accelerated "cheat sheet" method, this tutorial is designed to make you
22     a proficient vi user without requiring a huge time commitment. In this vi
23     tutorial, you'll learn how to move around, edit text, use insert mode, copy and
24     paste text, and use important vim extensions like visual mode and multi-window
25     editing.
26 vapier 1.5 </p>
27     <p>
28 drobbins 1.1 If you either don't know or aren't comfortable using vi, then you owe it to yourself
29     to take this tutorial and get up to speed with one of the most popular and powerful
30 vapier 1.5 Linux/UNIX visual editing programs.
31     </p>
32 drobbins 1.1
33     </body>
34     </section>
35     <section>
36     <title>About the guide</title>
37     <title>Learning vi -- accelerated</title>
38     <body>
39     <p>
40     There's one thing in particular that makes it difficult to learn vi -- vi has lots of commands.
41     In order to use vi effectively, you need to memorize quite a few. This can take a long time, and
42     one of the goals of this tutorial is not to take up a lot of your time. So, initially, we have
43     a challenge -- how exactly do I help you to memorize lots of commands in a short period of time?
44     </p>
45     <p>
46     To tackle this challenge, as we proceed through this tutorial, we're going to gradually put together
47     a vi "cheat sheet". This sheet will contain all the important vi commands. After you've completed
48     this tutorial, you'll be able to refer to this cheat sheet if you forget a particular command.
49     Over time, as you memorize commands, you'll gradually become less and less dependent on the cheat sheet.
50     By using the cheat-sheet technique, you'll be able to learn how to use vi faster than ever possible
51     before!
52     </p>
53     </body>
54     </section>
55     <section>
56     <title>The learning process</title>
57     <body>
58    
59     <p>In this guide, I'm going to use several techniques to help you learn.
60     First, I'm going to describe how a particular command works, as you'd expect. Then, I'm going
61     to ask you to try to use the command in vi (for practice), and then I'm going to ask you to transcribe
62     the command to the cheat sheet (for later reference.) If you want to learn vi quickly, it's important
63     that you perform all these steps. Trying out a command in vi and transcribing
64     the command onto your cheat sheet will help you to memorize the command.
65     </p>
66     </body>
67     </section>
68     <section>
69     <title>Introducing vim</title>
70     <body>
71    
72     <p>There are many versions of vi, and I'm going to be showing you how to use a
73     version of vi called "vim". vim is very popular and has a number of extensions
74     that make vi a lot nicer (whenever I demonstrate a vim-specific command, I'll
75 bennyc 1.7 make a note of it.) If you need to install vim, you can get it from <uri link="http://www.vim.org/">www.vim.org</uri>.
76 drobbins 1.1 In addition to an enhanced
77     command-line vi, vim also comes with gvim, a nice graphical editor which can be
78     configured to use the excellent GTK+ gui library. Here's a gvim screenshot
79     from my system:</p>
80    
81 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vishot.png" short="screenshot" caption="VIM screenshot"/>
82 drobbins 1.1
83     <p>If you're a vi newbie, try to get gvim running on your system. Using vi
84     from a gui can make things a bit easier for beginners.</p>
85    
86     </body>
87     </section>
88     </chapter>
89     <chapter>
90     <title>First Steps</title>
91     <section>
92     <title>Pick a file</title>
93     <body>
94     <p>Before using vi to edit files, you need to know how to use vi to move around in
95     a file. vi has a lot of movement commands, and we're going to take a look at many
96     of them. For this part of the tutorial, find an unimportant text file and load it into
97     vi by typing:</p>
98     <pre>
99     $ vi myfile.txt
100     </pre><p>
101     If you have vim installed, type "vim myfile.txt". If you'd prefer to use gvim, type
102     "gvim myfile.txt". myfile.txt should be the name of a text file on your system.
103     </p>
104     </body>
105     </section>
106    
107     <section>
108     <title>Inside vi</title>
109     <body>
110    
111     <p>After vi loads, you should see a part of the text file you loaded on your screen.
112     Congratulations -- you're in vi! Unlike many editors, when vi starts up, it is in
113     a special mode called "command mode". This means that if you press "l" on the keyboard,
114     instead of inserting an "l" into the file at the current cursor position, the cursor
115     will move one character to the right instead. In command mode, the
116     characters on your keyboard are used to send commands to vi rather than insert literal
117     characters into the text. One of the most essential types of commands are movement commands;
118     let's take a look at some.</p>
119    
120     </body>
121     </section>
122     </chapter>
123     <chapter>
124     <title>Moving around</title>
125     <section>
126     <title>Moving in vi, part 1</title>
127     <body>
128    
129     <p>When in command mode, you can use the <c>h</c>,<c>j</c>,<c>k</c> and <c>l</c> keys to move the cursor left,
130     down, up and right respectively. If you're using a modern version of vi, you can also
131     use the arrow keys for this purpose. The <c>h</c>,<c>j</c>,<c>k</c> and <c>l</c> keys are handy because once
132     you're comfortable with them, you'll be able to move around in the file without moving
133     your fingers from the home keyboard row. Try using <c>h</c>,<c>j</c>,<c>k</c> and <c>l</c> (and the arrow keys) to move
134     around in the text file. Try using <c>h</c> until you get to the beginning of a line. Notice that
135     vi doesn't allow you to "wrap around" to the previous line by hitting <c>h</c> while you're on the first
136     character. Likewise, you can't "wrap around" to the next line by hitting <c>l</c> at the end of a line.
137     </p>
138    
139     </body>
140     </section>
141     <section>
142     <title>Moving in vi, part 2</title>
143     <body>
144    
145     <p>vi offers special shortcuts for jumping to the beginning or end of the current line. You can
146     press <c>0</c> (zero) to jump to the first character of a line, and <c>$</c> to jump to the last character of the line.
147     Try 'em and see. Since vi has so many handy movement commands, it makes a great "pager" (like the
148     more or less commands.) Using vi as a pager will also help you to learn all the movement
149     commands very quickly.</p>
150    
151     <p>You can also use <c>&lt;CTR&gt;F</c> and <c>&lt;CTR&gt;B</c> to move forwards and backwards a page at a time.
152     Modern versions of vi (like vim) will also allow you to use the PGUP and PGDOWN keys for this purpose.
153     </p>
154    
155     </body>
156     </section>
157     <section>
158     <title>Word moves, part 1</title>
159     <body>
160     <p>vi also allows you to move to the left or right by word increments. To move to the <i>first</i> character of the
161     next word, press <c>w</c>. To move to the <i>last</i> character of the next word, press <c>e</c>. To move to the first character
162     of the <i>previous</i> word, press <c>b</c>. Test 'em out.</p>
163     </body>
164     </section>
165    
166     <section>
167     <title>Word moves, part 2</title>
168     <body>
169     <p>After playing around with the word movement commands, you may have noticed that vi
170     considers words like "foo-bar-oni" as five separate words! This is because by default,
171     vi delimits words by spaces <i>or</i> punctuation. foo-bar-oni is therefore considered
172     five words: "foo","-","bar","-" and "oni".</p>
173     <p>Sometimes, this is what you want, and sometimes it isn't. Fortunately, vi also
174     understands the concept of a "bigword". vi delimits bigwords by <i>spaces or newlines only</i>.
175     This means that while foo-bar-oni is considered five vi words, it's considered only one
176     vi bigword.</p>
177    
178     </body>
179     </section>
180     <section>
181     <title>Word moves, part 3</title>
182     <body>
183     <p>To jump around to the next and previous bigword, you can use a <i>capitalized</i>
184     word move command. Use <c>W</c> to jump to the first character of the next bigword, <c>E</c> to jump
185     to the last character of the next bigword, and <c>B</c> to jump to the first character
186     of the previous bigword. Test 'em out, and compare the matching word and bigword movement
187     commands until you understand their differences.
188     </p>
189    
190    
191     </body>
192     </section>
193     <section>
194     <title>Bigger moves</title>
195     <body>
196     <p>We just have a few more commands to cover before it's time to start puting together our
197     cheat sheet. You can use the <c>(</c> and <c>)</c> characters to move to the beginning of the previous and next sentence.
198     In addition, you can hit <c>{</c> or <c>}</c> to jump to the beginning of the current paragraph, and the beginning of the
199     next. Test 'em out.</p>
200    
201     </body>
202     </section>
203     </chapter>
204     <chapter>
205     <title>quiting</title>
206     <section>
207     <title>Quitting</title>
208     <body>
209     <p>We've covered the basic movement commands, but there are another couple of commands that you need
210     to know. Typing <c>:q</c> will quit vi. If this doesn't work, then you probably accidentally modified the file
211     in some way. To tell vi to quit, throwing away any changes, type <c>:q!</c>. You should now be at the command
212     prompt.</p>
213    
214     <p>In vi, any command that begins with a ":" is said to be an <i>ex-mode</i> command. This is because vi
215     has a built-in non-visual editor called <e>ex</e>. It can be used similarly to sed to perform line-based
216     editing operations. In addition, it can also be used to quit, as we've just seen. If you ever hit
217     the <c>Q</c> key while in command mode, you'll be transported to ex mode. If this ever happens to you , you'll
218     be confronted with a : prompt, and hitting enter will scroll the entire screen upwards. To get back
219     to good 'ol vi mode, simply type vi and hit enter.</p>
220    
221     </body>
222     </section>
223     </chapter>
224     <chapter>
225     <title>The Cheat Sheet</title>
226     <section>
227     <title>The beginnings of the cheat sheet</title>
228     <body>
229     <p>We've covered a lot of commands, and it's time to transcribe them to our cheat sheet. For the
230     cheat sheet, you'll need a US letter or A4 sized piece of paper (we're going to pack a lot of info
231     onto this sheet!) Here's a picture of my cheat sheet after I've transcribed all the commands that
232     we've covered so far. Try to follow my layout if possible so that we can fit everything on one
233     sheet.</p>
234    
235 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-first.png" short="First part of the cheat sheet" caption="Cheat Sheet"/>
236 drobbins 1.1
237     </body>
238    
239     </section>
240     <section>
241     <title>Miscellaneous vi</title>
242    
243     <body>
244     <p>Let's continue our rapid command-covering pace. In command-mode, you can jump to a particularline by typing <c>G</c>. To jump to the first line of a file, type <c>1G</c>. Note that <c>G</c> is capitalized.</p>
245     <p>If you want to jump to the next occurence of a particular text pattern, type <c>/&lt;regexp&gt;</c> and hit <c>enter</c>. Replace
246     &lt;regexp&gt; with the regular expression you're looking for. If you don't know how to use regular expressions, don't
247     fret -- typing <c>/foo</c> will move to the next occurence of <i>foo</i>. The only thing you'll need to watch out for is when
248     you want to refer to the literal <i>^</i>, <i>.</i>, <i>$</i> or <i>\</i> characters. Prefix these characters with a backslash (<i>\</i>), and you'll
249     be set. For example, <c>/foo\.gif</c> will search for the next occurence of "<i>foo.gif</i>".</p>
250     <p>To repeat the search forwards, hit <c>n</c>. To repeat the search backwards, type <c>N</c>. As always, test these
251     commands out in your very own vi editor. You can also type <c>//</c> to repeat the last search.</p>
252    
253     </body>
254     </section>
255     </chapter>
256     <chapter>
257     <title>Saving and Editing</title>
258     <section>
259     <title>Save and save as...</title>
260     <body>
261     <p>We've covered how you can use the <i>ex</i> command <c>:q</c> to quit from vi. If you want to save your
262     changes, type <c>:w</c>. If you want to save your changes to another file, type <c>:w filename.txt</c> to
263     save as <e>filename.txt</e>. If you want to save and quit, type <c>:x</c> or <c>:wq</c>.</p>
264     <p>In vim (and other advanced vi editors, like elvis)<c>:w</c>, you can have multiple buffers open at once. To open a file into a new window, type <c>:sp filename.txt</c>. <e>filename.txt</e> will appear open for editing in a new split window. To switch between windows, type <c>&lt;CTR&gt;w&lt;CTR&gt;w</c> (control-w twice). Any <c>:q</c>, <c>:q!</c>, <c>:w</c> and <c>:x</c> commands that you enter will only be applied to the currently-active window.</p>
265     </body>
266     </section>
267    
268     <section>
269     <title>Simple edits</title>
270     <body>
271     <p>Now, it's time to start learning some of the simple editing commands. The commands that
272     we'll cover here are considered "simple" because the commands keep you in command mode. The
273     more complex editing commands automatically put you into insert mode -- a mode that allows
274     you to enter literal data from the keyboard. We'll cover those in a bit.</p>
275     <p>For now, try moving over some characters and hitting <c>x</c> repeatedly. You'll see that <c>x</c>
276     will delete the current character under the cursor. Now, move to the middle of the paragraph
277     somewhere in your text file, and hit <c>J</c> (capitalized). You'll see that the <c>J</c> command tells
278 stocke2 1.3 vi to join the next line to the end of the current line. Now, move over a character and hit
279 drobbins 1.1 <c>r</c>, and then type in a new character; you'll see that the original character has been replaced.
280     Finally, move to any line in the file and
281     type <c>dd</c>. You'll see that <c>dd</c> deletes the current line of text.</p>
282    
283     </body>
284     </section>
285     <section>
286     <title>Repeating and deleting</title>
287     <body>
288     <p>You can repeat any editing command by hitting the <c>.</c> key. If you experiment, you'll see that
289     typing <c>dd...</c> will delete 4 lines, and <c>J......</c> will join four lines. As usual, vi provides with
290     another handy shortcut.
291     </p>
292     <p>To delete text, you can also use the <c>d</c> command combined with any movement command. For example,
293     <c>dw</c> will delete from the current position to the beginning of the next word; <c>d)</c> will delete up until the
294     end of the next sentence, and <c>d}</c> will delete the remainder of the paragraph. Experiment with the
295 swift 1.4 <c>d</c> command and the other editing commands until you're comfortable with them.</p>
296 drobbins 1.1 </body>
297     </section>
298     <section>
299     <title>Undo!</title>
300     <body>
301     <p>Now that we're experimenting with deletion, it would be a good time to learn how to undo any changes.
302     By pressing <c>u</c>, the original version of vi allowed you to undo the last edit only. However, modern versions
303     of vi like vim will allow you to repeatedly press <c>u</c> to continue to undo changes to your file. Try combining
304     some <c>d</c> and <c>u</c> commands together.
305     </p>
306     </body>
307     </section>
308    
309     <section>
310     <title>Updating the cheat sheet</title>
311     <body>
312     <p>Time to update the cheat sheet! After adding all the commands we've covered so far, your
313     cheat sheet should look like this:</p>
314    
315 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-edit.png" short="Cheat sheet" caption="Cheat sheet with editing commands"/>
316 drobbins 1.1
317     </body>
318     </section>
319     </chapter>
320     <chapter>
321     <title>Insert mode</title>
322     <section>
323     <title>Insert mode</title>
324    
325     <body>
326     <p>So far, we've covered how to move around in vi, perform file i/o, and perform basic editing
327     operations. However, I still haven't shown you how to actually type in free-form text! This
328     was intentional, because vi's insert mode is a bit complicated at first. However, after you
329     become comfortable with insert mode, its complexity (and flexibility) will become an asset.
330     </p>
331     <p>In vi insert mode, you'll be able to enter text directly to the screen just like you can in many
332     other visual editors. Once you've entered your modifications, you can hit escape to return to
333     command mode. You can enter insert mode by pressing <c>i</c> or <c>a</c>. If you press <c>i</c>, your text will be <e>inserted</e>
334     before the current character, and if you hit <c>a</c>, your text will be <e>appended</e> after the current character.
335     Remember, after you enter your text, hit <c>&lt;ESC&gt;</c> to return to command mode.</p>
336     </body>
337     </section>
338     <section>
339     <title>Benefits of insert mode</title>
340     <body>
341     <p>Go ahead and try using the <c>a</c> and <c>i</c> commands. Hit either <c>a</c> or <c>i</c>, type some text, and then hit
342     escape to get back to command mode. After hitting <c>a</c> or <c>i</c>, try hitting <c>&lt;ENTER&gt;</c>, and see what happens.
343     Try using the arrow keys and the <c>&lt;DEL&gt;</c> key to get a feel for how insert mode works. By using
344     the arrow keys and <c>&lt;DEL&gt;</c> key, you can perform significant editing steps without repeatedly entering
345     and leaving insert mode</p>
346     </body>
347     </section>
348     <section>
349     <title>Insert options</title>
350     <body>
351     <p>Here are some other handy ways to enter insert mode. Press <c>A</c> (captial) to begin appending
352     to the <e>end</e> of the current line, regardless of your current position on the line. Likewise, press
353     <c>I</c> (capital) to begin inserting text at the <e>beginning</e> of the current line. Press <c>o</c> to create
354     a new blank line below the current line into which you can insert text, and press <c>O</c> (capital) to
355     create a new line above the current line. To replace the entire current line with a new line,
356     press <c>cc</c>. To replace everything from the current position to the end of the line, type <c>c$</c>. To replace
357     everything from the current position to the beginning of the line, type <c>c0</c>.</p>
358     <p>In addition to performing a special operation, every one of these commands will put you
359     into insert mode. After typing in your text, hit <c>&lt;ESC&gt;</c> to return to command mode.
360     </p>
361    
362     </body>
363     </section>
364     <section>
365     <title>Changing text</title>
366     <body>
367     <p>We've used the <c>c</c> (change) command a little bit so far when we typed <c>cc</c>, <c>c0</c> and <c>c$</c>. <c>cc</c> is a special
368     form of the change command, similar to <c>dd</c>. the <c>c0</c> and <c>c$</c> commands are examples of using the change
369     command in combination with a movement command. In this form, <c>c</c> works similarly to <c>d</c>, except that it
370     leaves you in insert mode so that you can enter replacement text for the deleted region. Try combining some
371     movement commands with <c>c</c> and test them out on your file (hint: <c>cW</c>, <c>ce</c>, <c>c(</c> .)
372     </p>
373    
374     </body>
375     </section>
376     </chapter>
377     <chapter>
378     <title>Compound Commands</title>
379     <section>
380     <title>Compound commands</title>
381     <body>
382     <p>vi <e>really</e> becomes powerful when you start using compound ("combo") commands, like <c>d{</c> and <c>cw</c>.
383     In addition to these commands, you can also combine a number with any movement command, such as
384     <c>3w</c>, which will tell vi to jump three words to the right. Here are some more movement "combo" command
385     examples: <c>12b</c>, <c>4j</c>.</p>
386     <p>vi, in addition to allowing (number)(movement command) combinations, also allows <c>d</c> or <c>c</c>
387     to be combined with a number or movement command. So, <c>d3w</c> will delete the next three words, <c>d2j</c> will
388     delete the current and next two lines, etc. Test out some <c>c</c> and <c>d</c> combo moves to get a feel for
389     how powerful and concise vi editing can be. Once these commands are second-nature, you'll be able
390     to edit files at blazing speed.</p>
391    
392     </body>
393     </section>
394     <section>
395     <title>Updating the cheat sheet</title>
396     <body>
397     <p>Time to update the cheat sheet again. Here's what it looks like so far:</p>
398     <p>
399 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-compound.png" short="Cheat Sheet" caption="Cheat sheet with compound commands"/>
400 drobbins 1.1
401     </p>
402     </body>
403     </section>
404     <section>
405     <title>Productivity features</title>
406    
407     <body>
408     <p>So far, we've covered how to move, save and quit, perform simple edits
409     and deletions, and use insert mode. With everything listed on the cheat
410     sheet so far, you should be able to use vi to perform almost any task.</p>
411     <p>However, vi also has many more powerful commands. In this section, you'll
412     learn how to <e>cut</e>, <e>copy</e> and <e>paste</e>, <e>search</e> and <e>replace</e>, and use <e>autoindent</e>
413     features. These commands will help make vi more fun and productive.</p>
414    
415     </body>
416     </section>
417     <section>
418     <title>Visual mode</title>
419     <body>
420     <p>The best way to cut and paste is to use visual mode, a special mode that
421     has been added to modern versions of vi, like vim and elvis. You can think
422     of visual mode as a "highlight text" mode. Once the text is highlighted,
423     it can be copied or deleted, and then pasted. If you are using gvim, you
424     can highlight by simply dragging the left mouse button over a particular
425     region:</p>
426     <p>
427 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vihighlight.png" short="Highlighted text" caption="VIM with highlighted text"/>
428 drobbins 1.1
429     </p>
430     </body>
431     </section>
432     <section>
433     <title></title>
434     <body>
435    
436     <p>In addition, you can also enter visual mode by hitting <c>v</c> (this may be your
437 swift 1.4 only option if you are using vi from the console.) Then, by moving the cursor
438 drobbins 1.1 using movement commands (typically the arrow keys), you'll be able to highlight
439     a region of text. Once highlighted, we are ready to cut or copy the text.
440     </p>
441    
442     <p>If you're copying the text, hit <c>y</c> (which stands for "yank"). If you're cutting
443     the text, hit <c>d</c>. You'll be placed back in command mode. Now, move to the position
444     where you'd like to insert the cut or copied text, and hit <c>P</c> to insert after the cursor,
445     or <c>p</c> to insert before the cursor. Voila, the cut/copy and paste is complete!
446     Test out several copy/cut and paste operations before advancing to the next section.
447     </p>
448    
449     </body>
450     </section>
451     <section>
452     <title>Replacing text</title>
453     <body>
454     <p>To replace patterns of text, we use <e>ex</e> mode. If you'd like to replace the first pattern
455     that appears on the current line, type <c>:s/&lt;regexp&gt;/&lt;replacement&gt;/</c> and hit <c>&lt;ENTER&gt;</c>, where &lt;regexp&gt;
456     is the pattern you'd like to match and &lt;replacement&gt; is the replacement string. To replace all
457     matches on the current line, type <c>:s/&lt;regexp&gt;/&lt;replacement&gt;/g</c> and hit enter. To replace every
458     occurence of this pattern in your file (normally what you want), type <c>:%s/&lt;regexp&gt;/&lt;replacement&gt;/g</c>.
459     If you'd like to do a global replace, but have vi prompt you for each change, type
460     <c>:%s/&lt;regexp&gt;/&lt;replacement&gt;/gc</c> (stands for "confirm") and hit <c>&lt;ENTER&gt;</c>.</p>
461    
462     </body>
463     </section>
464     <section>
465     <title>Indentation</title>
466     <body>
467     <p>vi supports autoindentation, for when you are editing source code. Most modern versions
468     of vi (like vim) will auto-enable autoindent mode when you are editing a source file (like a .c
469     file, for example). When autoindent is enabled, you can use <c>&lt;CTR&gt;d</c> (control-d) to move one indent
470     level to the left, and <c>&lt;CTR&gt;t</c> (control-t) to move one indent level to the right. If autoindent
471     wasn't enabled automatically, you can manually enable it by typing in the <e>ex</e> command <c>:set</c> autoindent.
472     You can also tell vi to set the tab size to your favorite setting by using the <c>:set tabstop</c> command;
473     <c>:set tabstop=4</c> is quite popular.</p>
474    
475     </body>
476     </section>
477     <section>
478     <title>Our final cheat sheet</title>
479     <body>
480     <p>Well, we've reached the end of the vi tutorial! After adding all the advanced editing commands
481     to your cheat sheet, it should look like this:</p>
482     <p>
483 rajiv 1.6 <figure link="http://www.ibiblio.org/web-gentoo/images/vicheat-final.png" short="Cheat Sheet" caption="Final cheet sheet"/>
484 drobbins 1.1
485     </p>
486    
487     <p>Keep your cheat sheet handy, and begin using vi to edit files and compose emails. Refer to the
488     cheat sheet when needed; you'll find that within the week, you'll have nearly all the commands
489     memorized and your vi productivity will shoot through the roof!</p>
490    
491     </body>
492     </section>
493     <section>
494     <title>Resources</title>
495     <body>
496     <p>Here are some resources you may find helpful as you continue to learn more about vi:</p>
497     <ul>
498     <li><uri link="http://www.thomer.com/thomer/vi/vi.html">The vi Lovers Home Page</uri>, an excellent resource for all
499     things vi.</li>
500 rajiv 1.6 <li><uri link="http://www.vim.org/">The vim homepage</uri> is the place to go for all your vim needs.</li>
501 drobbins 1.1 <li>If you're looking for a good, old-fashioned book, <uri link="http://www.oreilly.com/catalog/vi6/">Learning the vi Editor, 6th Edition</uri> would be an excellent choice. Contains good coverage of vi and vi clones.</li>
502     </ul>
503 swift 1.8 </body>
504     </section>
505     <section>
506     <title>About this document</title>
507     <body>
508    
509     <p>
510     The original version of this article was first published on IBM
511     developerWorks, and is property of Westtech Information Services. This
512     document is an updated version of the original article, and contains
513     various improvements made by the Gentoo Linux documentation team.
514     </p>
515    
516 drobbins 1.1 </body>
517     </section>
518     </chapter>
519     </guide>

  ViewVC Help
Powered by ViewVC 1.1.20