diff runtime/tutor/tutor @ 11:4424b47a0797

updated for version 7.0003
author vimboss
date Wed, 30 Jun 2004 16:16:41 +0000
parents 3fc0f57ecb91
children c4cd8ad60bee
line wrap: on
line diff
--- a/runtime/tutor/tutor
+++ b/runtime/tutor/tutor
@@ -1,5 +1,5 @@
 ===============================================================================
-=    W e l c o m e   t o   t h e   V I M   T u t o r    -    Version 1.5      =
+=    W e l c o m e   t o   t h e   V I M   T u t o r    -    Version 1.7      =
 ===============================================================================
 
      Vim is a very powerful editor that has many commands, too many to
@@ -10,6 +10,7 @@
      The approximate time required to complete the tutor is 25-30 minutes,
      depending upon how much time is spent with experimentation.
 
+     ATTENTION:
      The commands in the lessons will modify the text.  Make a copy of this
      file to practise on (if you started "vimtutor" this is already a copy).
 
@@ -33,7 +34,7 @@
   1. Move the cursor around the screen until you are comfortable.
 
   2. Hold down the down key (j) until it repeats.
----> Now you know how to move to the next lesson.
+     Now you know how to move to the next lesson.
 
   3. Using the down key, move to Lesson 1.2.
 
@@ -41,36 +42,36 @@ Note: If you are ever unsure about somet
       you in Normal mode.  Then retype the command you wanted.
 
 Note: The cursor keys should also work.  But using hjkl you will be able to
-      move around much faster, once you get used to it.
+      move around much faster, once you get used to it.  Really!
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		     Lesson 1.2: ENTERING AND EXITING VIM
+			    Lesson 1.2: EXITING VIM
 
 
   !! NOTE: Before executing any of the steps below, read this entire lesson!!
 
   1. Press the <ESC> key (to make sure you are in Normal mode).
 
-  2. Type:			:q! <ENTER>.
-
----> This exits the editor WITHOUT saving any changes you have made.
-     If you want to save the changes and exit type:
-				:wq  <ENTER>
+  2. Type:	:q! <ENTER>.
+     This exits the editor, DISCARDING any changes you have made.
 
   3. When you see the shell prompt, type the command that got you into this
-     tutor.  That could be:	vimtutor <ENTER>
-     Normally you would use:	vim tutor <ENTER>
-
----> 'vim' means enter the vim editor, 'tutor' is the file you wish to edit.
+     tutor.  That would be:	vimtutor <ENTER>
 
   4. If you have these steps memorized and are confident, execute steps
-     1 through 3 to exit and re-enter the editor.  Then move the cursor down
-     to Lesson 1.3.
+     1 through 3 to exit and re-enter the editor.
+
+NOTE:  :q! <ENTER>  discards any changes you made.  In a few lessons you
+       will learn how to save the changes to a file.
+
+  5. Move the cursor down to Lesson 1.3.
+
+
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		     Lesson 1.3: TEXT EDITING - DELETION
 
 
-** While in Normal mode press	x  to delete the character under the cursor. **
+	   ** Press  x  to delete the character under the cursor. **
 
   1. Move the cursor to the line below marked --->.
 
@@ -90,10 +91,10 @@ NOTE: As you go through this tutor, do n
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		     Lesson 1.4: TEXT EDITING - INSERTION
+		      Lesson 1.4: TEXT EDITING - INSERTION
 
 
-	 ** While in Normal mode press  i  to insert text. **
+			** Press  i  to insert text. **
 
   1. Move the cursor to the first line below marked --->.
 
@@ -113,33 +114,79 @@ NOTE: As you go through this tutor, do n
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+		     Lesson 1.5: TEXT EDITING - APPENDING
+
+
+			** Press  A  to append text. **
+
+  1. Move the cursor to the first line below marked --->.
+     It does not matter on what character the cursor is in that line.
+
+  2. Press  A  and type in the necessary additions.
+
+  3. As the text has been appended press <ESC> to return to Normal mode.
+
+  4. Move the cursor to the second line marked ---> and repeat 
+     steps 2 and 3 to correct this sentence.
+
+---> There is some text missing from th
+     There is some text missing from this line.
+---> There is also some text miss
+     There is also some text missing here.
+
+  5. When you are comfortable appending text move to lesson 1.6.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+		     Lesson 1.6: EDITING A FILE
+
+
+		    ** Use  :wq  to save a file and exit. **
+
+  !! NOTE: Before executing any of the steps below, read this entire lesson!!
+
+  1. Exit this tutor as you did in lesson 1.2:  :q!
+
+  2. At the shell prompt type this command:  vim tutor <ENTER>
+     'vim' is the command to start the Vim editor, 'tutor' is the name of the
+     file you wish to edit.  Use a file that may be changed.
+
+  3. Insert and delete text as you learned in the previous lessons.
+
+  4. Save the file with changes and exit Vim with:  :wq  <ENTER>
+
+  5. Restart the vimtutor and move down to the following summary.
+
+  6. After reading the above steps and understanding them: do it.
+
+  
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			       LESSON 1 SUMMARY
 
 
   1. The cursor is moved using either the arrow keys or the hjkl keys.
 	 h (left)	j (down)       k (up)	    l (right)
 
-  2. To enter Vim (from the % prompt) type:  vim FILENAME <ENTER>
+  2. To start Vim from the shell prompt type:  vim FILENAME <ENTER>
 
   3. To exit Vim type:	   <ESC>   :q!	 <ENTER>  to trash all changes.
 	     OR type:	   <ESC>   :wq	 <ENTER>  to save the changes.
 
-  4. To delete a character under the cursor in Normal mode type:  x
+  4. To delete the character at the cursor type:  x
 
-  5. To insert text at the cursor while in Normal mode type:
-	 i     type in text	<ESC>
+  5. To insert or append text type:
+	 i   type inserted text   <ESC>		insert before the cursor
+	 A   type appended text   <ESC>         append after the line
 
 NOTE: Pressing <ESC> will place you in Normal mode or will cancel
       an unwanted and partially completed command.
 
 Now continue with Lesson 2.
 
-
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			Lesson 2.1: DELETION COMMANDS
 
 
-	    ** Type  dw  to delete to the end of a word. **
+		       ** Type  dw  to delete a word. **
 
   1. Press  <ESC>  to make sure you are in Normal mode.
 
@@ -149,15 +196,15 @@ Now continue with Lesson 2.
 
   4. Type   dw	 to make the word disappear.
 
-  NOTE: The letters dw will appear on the last line of the screen as you type
-	them. If you typed something wrong, press  <ESC>  and start over.
+  NOTE: The letter  d  will appear on the last line of the screen as you type
+	it.  Vim is waiting for you to type  w .  If you see another character
+	than  d  you typed something wrong; press  <ESC>  and start over.
 
 ---> There are a some words fun that don't belong paper in this sentence.
 
   5. Repeat steps 3 and 4 until the sentence is correct and go to Lesson 2.2.
 
 
-
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		      Lesson 2.2: MORE DELETION COMMANDS
 
@@ -182,56 +229,102 @@ Now continue with Lesson 2.
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		     Lesson 2.3: ON COMMANDS AND OBJECTS
+		     Lesson 2.3: ON OPERATORS AND MOTIONS
 
 
-  The format for the  d  delete command is as follows:
+  Many commands that change text are made from an operator and a motion.
+  The format for a delete command with the  d  delete operator is as follows:
 
-	 [number]   d	object	    OR	     d	 [number]   object
+  	d   motion
+
   Where:
-    number - is how many times to execute the command (optional, default=1).
-    d - is the command to delete.
-    object - is what the command will operate on (listed below).
+    d      - is the delete operator.
+    motion - is what the operator will operate on (listed below).
+
+  A short list of motions:
+    w - until the start of the next word, EXCLUDING its first character.
+    e - to the end of the current word, INCLUDING the last character.
+    $ - to the end of the line, INCLUDING the last character.
+
+  Thus typing  de  will delete from the cursor to the end of the word.
+
+NOTE:  Pressing just the motion while in Normal mode without an operator will
+       move the cursor as specified.
 
-  A short list of objects:
-    w - from the cursor to the end of the word, including the space.
-    e - from the cursor to the end of the word, NOT including the space.
-    $ - from the cursor to the end of the line.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+		     Lesson 2.4: USING A COUNT FOR A MOTION
+
+
+   ** Typing a number before a motion repeats it that many times. **
+
+  1. Move the cursor to the start of the line marked ---> below.
+
+  2. Type  2w  to move the cursor two words forward.
 
-NOTE:  For the adventurous, pressing just the object while in Normal mode
-       without a command will move the cursor as specified in the object list.
+  3. Type  3e  to move the cursor to the end of the third word forward.
+
+  4. Type  0  (zero) to move to the start of the line.
+
+  5. Repeat steps 2 and 3 with different numbers.
+
+---> This is just a line with words you can move around in.
+
+  6. Move on to Lesson 2.5.
 
 
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		Lesson 2.4: AN EXCEPTION TO  'COMMAND-OBJECT'
+		     Lesson 2.5: USING A COUNT TO DELETE MORE
 
 
-	       ** Type	 dd   to delete a whole line. **
+   ** Typing a number with an operator repeats it that many times. **
+
+  In the combination of the delete operator and a motion mentioned above you
+  insert a count before the motion to delete more:
+	 d   number   motion
+
+  1. Move the cursor to the first UPPER CASE word in the line marked --->.
+
+  2. Type  2dw  to delete the two UPPER CASE words
+
+  3. Repeat steps 1 and 2 with a different count to delete the consecutive
+     UPPER CASE words with one command
+
+--->  this ABC DE line FGHI JK LMN OP of words is Q RS TUV cleaned up.
+
+NOTE:  A count between the operator  d  and the motion works similar to
+       using the motion without an operator.
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+			 Lesson 2.6: OPERATING ON LINES
+
+
+		   ** Type  dd   to delete a whole line. **
 
   Due to the frequency of whole line deletion, the designers of Vi decided
-  it would be easier to simply type two d's in a row to delete a line.
+  it would be easier to simply type two d's to delete a line.
 
   1. Move the cursor to the second line in the phrase below.
   2. Type  dd  to delete the line.
   3. Now move to the fourth line.
-  4. Type   2dd   (remember  number-command-object) to delete the two lines.
+  4. Type   2dd   to delete two lines.
 
-      1)  Roses are red,
-      2)  Mud is fun,
-      3)  Violets are blue,
-      4)  I have a car,
-      5)  Clocks tell time,
-      6)  Sugar is sweet
-      7)  And so are you.
+--->  1)  Roses are red,
+--->  2)  Mud is fun,
+--->  3)  Violets are blue,
+--->  4)  I have a car,
+--->  5)  Clocks tell time,
+--->  6)  Sugar is sweet
+--->  7)  And so are you.
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-			 Lesson 2.5: THE UNDO COMMAND
+			 Lesson 2.7: THE UNDO COMMAND
 
 
-   ** Press  u	to undo the last commands,   U	 to fix a whole line. **
+   ** Press  u	to undo the last commands,   U  to fix a whole line. **
 
   1. Move the cursor to the line below marked ---> and place it on the
      first error.
@@ -254,45 +347,45 @@ NOTE:  For the adventurous, pressing jus
 			       LESSON 2 SUMMARY
 
 
-  1. To delete from the cursor to the end of a word type:    dw
-
+  1. To delete from the cursor upto the next word type:    dw
   2. To delete from the cursor to the end of a line type:    d$
-
   3. To delete a whole line type:    dd
 
-  4. The format for a command in Normal mode is:
-
-       [number]   command   object     OR     command	[number]   object
+  4. To repeat a motion prepend it with a number:   2w
+  5. The format for a change command is:
+               operator   [number]   motion
      where:
-       number - is how many times to repeat the command
-       command - is what to do, such as  d  for delete
-       object - is what the command should act upon, such as  w (word),
-		$ (to the end of line), etc.
+       operator - is what to do, such as  d  for delete
+       [number] - is an optional count to repeat the motion
+       motion   - moves over the text to operator on, such as  w (word),
+		  $ (to the end of line), etc.
 
-  5. To undo previous actions, type:	     u	 (lowercase u)
-     To undo all the changes on a line type: U	 (capital U)
-     To undo the undo's type:		     CTRL-R
+  6. To move to the start of the line use a zero:  0
+
+  7. To undo previous actions, type: 	       u  (lowercase u)
+     To undo all the changes on a line, type:  U  (capital U)
+     To undo the undo's, type:		       CTRL-R
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			 Lesson 3.1: THE PUT COMMAND
 
 
-       ** Type	p  to put the last deletion after the cursor. **
+       ** Type	p  to put previously deleted text after the cursor. **
 
-  1. Move the cursor to the first line in the set below.
+  1. Move the cursor to the first ---> line below.
 
-  2. Type  dd  to delete the line and store it in Vim's buffer.
+  2. Type  dd  to delete the line and store it in a Vim register.
 
-  3. Move the cursor to the line ABOVE where the deleted line should go.
+  3. Move the cursor to the c) line, ABOVE where the deleted line should go.
 
-  4. While in Normal mode, type    p	 to replace the line.
+  4. Type   p   to put the line below the cursor.
 
   5. Repeat steps 2 through 4 to put all the lines in correct order.
 
-     d) Can you learn too?
-     b) Violets are blue,
-     c) Intelligence is learned,
-     a) Roses are red,
+---> d) Can you learn too?
+---> b) Violets are blue,
+---> c) Intelligence is learned,
+---> a) Roses are red,
 
 
 
@@ -300,45 +393,45 @@ NOTE:  For the adventurous, pressing jus
 		       Lesson 3.2: THE REPLACE COMMAND
 
 
-  ** Type  r  and a character to replace the character under the cursor. **
+       ** Type  rx  to replace the character at the cursor with  x . **
 
   1. Move the cursor to the first line below marked --->.
 
   2. Move the cursor so that it is on top of the first error.
 
-  3. Type   r	and then the character which should replace the error.
+  3. Type   r	and then the character which should be there.
 
-  4. Repeat steps 2 and 3 until the first line is correct.
+  4. Repeat steps 2 and 3 until the first line is equal to the second one.
 
 --->  Whan this lime was tuoed in, someone presswd some wrojg keys!
 --->  When this line was typed in, someone pressed some wrong keys!
 
   5. Now move on to Lesson 3.2.
 
-NOTE: Remember that you should be learning by use, not memorization.
+NOTE: Remember that you should be learning by doing, not memorization.
 
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-			Lesson 3.3: THE CHANGE COMMAND
+			Lesson 3.3: THE CHANGE OPERATOR
 
 
-	   ** To change part or all of a word, type  cw . **
+	   ** To change until the end of a word, type  ce . **
 
   1. Move the cursor to the first line below marked --->.
 
-  2. Place the cursor on the u in lubw.
+  2. Place the cursor on the  u  in  lubw.
 
-  3. Type  cw  and the correct word (in this case, type  'ine'.)
+  3. Type  ce  and the correct word (in this case, type  ine ).
 
-  4. Press <ESC> and move to the next error (the first character to be changed.)
+  4. Press <ESC> and move to the next character that needs to be changed.
 
   5. Repeat steps 3 and 4 until the first sentence is the same as the second.
 
 ---> This lubw has a few wptfd that mrrf changing usf the change command.
 ---> This line has a few words that need changing using the change command.
 
-Notice that  cw  not only replaces the word, but also places you in insert.
+Notice that  ce  deletes the word and places you in Insert mode.
 
 
 
@@ -346,71 +439,71 @@ Notice that  cw  not only replaces the w
 		       Lesson 3.4: MORE CHANGES USING c
 
 
-     ** The change command is used with the same objects as delete. **
+     ** The change command is used with the same motions as delete. **
 
-  1. The change command works in the same way as delete.  The format is:
+  1. The change operator works in the same way as delete.  The format is:
 
-       [number]   c   object	   OR	    c	[number]   object
+         c    [number]   motion
 
-  2. The objects are also the same, such as   w (word), $ (end of line), etc.
+  2. The motions are the same, such as   w (word) and  $ (end of line).
 
   3. Move to the first line below marked --->.
 
   4. Move the cursor to the first error.
 
-  5. Type  c$  to make the rest of the line like the second and press <ESC>.
+  5. Type  c$  and type the rest of the line like the second and press <ESC>.
 
 ---> The end of this line needs some help to make it like the second.
 ---> The end of this line needs to be corrected using the  c$  command.
 
-
+NOTE:  You can use the Backspace key to correct mistakes while typing.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			       LESSON 3 SUMMARY
 
 
-  1. To replace text that has already been deleted, type   p .	This Puts the
+  1. To put back text that has just been deleted, type   p .  This puts the
      deleted text AFTER the cursor (if a line was deleted it will go on the
      line below the cursor).
 
   2. To replace the character under the cursor, type   r   and then the
-     character which will replace the original.
+     character you want to have there.
 
-  3. The change command allows you to change the specified object from the
-     cursor to the end of the object.  eg. Type  cw  to change from the
-     cursor to the end of the word, c$	to change to the end of a line.
+  3. The change operator allows you to change from the cursor to where the
+     motion takes you.  eg. Type  ce  to change from the cursor to the end of
+     the word,  c$  to change to the end of a line.
 
   4. The format for change is:
 
-	 [number]   c	object	      OR	c   [number]   object
+	 c   [number]   motion
 
 Now go on to the next lesson.
 
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		     Lesson 4.1: LOCATION AND FILE STATUS
-
+		  Lesson 4.1: CURSOR LOCATION AND FILE STATUS
 
-  ** Type CTRL-g to show your location in the file and the file status.
-     Type SHIFT-G to move to a line in the file. **
+  ** Type CTRL-G to show your location in the file and the file status.
+     Type  G  to move to a line in the file. **
 
   Note: Read this entire lesson before executing any of the steps!!
 
-  1. Hold down the Ctrl key and press  g .  A status line will appear at the
-     bottom of the page with the filename and the line you are on.  Remember
-     the line number for Step 3.
+  1. Hold down the Ctrl key and press  g .  We call this CTRL-G.
+     A message will appear at the bottom of the page with the filename and the
+     position in the file.  Remember the line number for Step 3.
 
-  2. Press shift-G to move you to the bottom of the file.
+NOTE:  You may see the cursor position in the lower right corner of the screen
+       This happens when the 'ruler' option is set (explained in lesson 6).
 
-  3. Type in the number of the line you were on and then shift-G.  This will
-     return you to the line you were on when you first pressed Ctrl-g.
-     (When you type in the numbers, they will NOT be displayed on the screen.)
+  2. Press  G  to move you to the bottom of the file.
+     Type  gg  to move you to the start of the file.
+
+  3. Type the number of the line you were on and then  G .  This will
+     return you to the line you were on when you first pressed CTRL-G.
 
   4. If you feel confident to do this, execute steps 1 through 3.
 
-
-
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			Lesson 4.2: THE SEARCH COMMAND
 
@@ -423,16 +516,16 @@ Now go on to the next lesson.
   2. Now type 'errroor' <ENTER>.  This is the word you want to search for.
 
   3. To search for the same phrase again, simply type  n .
-     To search for the same phrase in the opposite direction, type  Shift-N .
+     To search for the same phrase in the opposite direction, type  N .
 
-  4. If you want to search for a phrase in the backwards direction, use the
-     command  ?  instead of /.
+  4. To search for a phrase in the backward direction, use  ?  instead of  / .
 
----> "errroor" is not the way to spell error;  errroor is an error.
+  5. To go back to where you came from press  CTRL-O  (Keep Ctrl down while
+     pressing the letter o).  Repeat to go back further.  CTRL-I goes forward.
 
+Note: "errroor" is not the way to spell error;  errroor is an error.
 Note: When the search reaches the end of the file it will continue at the
-      start.
-
+      start, unless the 'wrapscan' option has been reset.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		   Lesson 4.3: MATCHING PARENTHESES SEARCH
@@ -444,21 +537,21 @@ Note: When the search reaches the end of
 
   2. Now type the  %  character.
 
-  3. The cursor should be on the matching parenthesis or bracket.
+  3. The cursor will move to the matching parenthesis or bracket.
 
-  4. Type  %  to move the cursor back to the first bracket (by matching).
+  4. Type  %  to move the cursor to the other matching bracket.
+
+  5. Move the cursor to another (,),[,],{ or } and see what  %  does.
 
 ---> This ( is a test line with ('s, ['s ] and {'s } in it. ))
 
+
 Note: This is very useful in debugging a program with unmatched parentheses!
 
 
 
-
-
-
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		      Lesson 4.4: A WAY TO CHANGE ERRORS
+		      Lesson 4.4: THE SUBSTITUTE COMMAND
 
 
 	** Type  :s/old/new/g  to substitute 'new' for 'old'. **
@@ -466,43 +559,43 @@ Note: This is very useful in debugging a
   1. Move the cursor to the line below marked --->.
 
   2. Type  :s/thee/the <ENTER> .  Note that this command only changes the
-     first occurrence on the line.
+     first occurrence of "thee" in the line.
 
-  3. Now type	 :s/thee/the/g	   meaning substitute globally on the line.
-     This changes all occurrences on the line.
+  3. Now type  :s/thee/the/g .  Adding the  g  flag means to substitute
+     globally in the line, change all occurrences of "thee" in the line.
 
 ---> thee best time to see thee flowers is in thee spring.
 
   4. To change every occurrence of a character string between two lines,
-     type   :#,#s/old/new/g    where #,# are the numbers of the two lines.
-     Type   :%s/old/new/g    to change every occurrence in the whole file.
-
-
-
+     type   :#,#s/old/new/g    where #,# are the line numbers of the range
+                               of lines where the subsitution is to be done.
+     Type   :%s/old/new/g      to change every occurrence in the whole file.
+     Type   :%s/old/new/gc     to find every occurrence in the whole file,
+     			       with a prompt wether to substitute or not.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			       LESSON 4 SUMMARY
 
 
-  1. Ctrl-g  displays your location in the file and the file status.
-     Shift-G  moves to the end of the file.  A line number followed
-     by  Shift-G  moves to that line number.
+  1. CTRL-G  displays your location in the file and the file status.
+             G  moves to the end of the file.
+     number  G  moves to that line number.
+            gg  moves to the first line.
 
   2. Typing  /	followed by a phrase searches FORWARD for the phrase.
      Typing  ?	followed by a phrase searches BACKWARD for the phrase.
      After a search type  n  to find the next occurrence in the same direction
-     or  Shift-N  to search in the opposite direction.
+     or  N  to search in the opposite direction.
+     CTRL-O takes you back to older positions, CTRL-I to newer positions.
 
-  3. Typing  %	while the cursor is on a  (,),[,],{, or }  locates its
-     matching pair.
+  3. Typing  %	while the cursor is on a (,),[,],{, or } goes to its match.
 
-  4. To substitute new for the first old on a line type    :s/old/new
+  4. To substitute new for the first old in a line type    :s/old/new
      To substitute new for all 'old's on a line type	   :s/old/new/g
      To substitute phrases between two line #'s type	   :#,#s/old/new/g
      To substitute all occurrences in the file type	   :%s/old/new/g
      To ask for confirmation each time add 'c'		   :%s/old/new/gc
 
-
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		Lesson 5.1: HOW TO EXECUTE AN EXTERNAL COMMAND
 
@@ -510,27 +603,27 @@ Note: This is very useful in debugging a
    ** Type  :!	followed by an external command to execute that command. **
 
   1. Type the familiar command	:  to set the cursor at the bottom of the
-     screen.  This allows you to enter a command.
+     screen.  This allows you to enter a command-line command.
 
   2. Now type the  !  (exclamation point) character.  This allows you to
      execute any external shell command.
 
   3. As an example type   ls   following the ! and then hit <ENTER>.  This
      will show you a listing of your directory, just as if you were at the
-     shell prompt.  Or use   :!dir  if ls doesn't work.
+     shell prompt.  Or use  :!dir  if ls doesn't work.
 
-Note:  It is possible to execute any external command this way.
+Note:  It is possible to execute any external command this way, also with
+       arguments.
 
 Note:  All  :  commands must be finished by hitting <ENTER>
-
-
+       From here one we will not always mention it.
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		      Lesson 5.2: MORE ON WRITING FILES
 
 
-     ** To save the changes made to the file, type  :w FILENAME. **
+     ** To save the changes made to the text, type  :w FILENAME. **
 
   1. Type  :!dir  or  :!ls  to get a listing of your directory.
      You already know you must hit <ENTER> after this.
@@ -539,10 +632,10 @@ Note:  All  :  commands must be finished
 
   3. Now type:	 :w TEST   (where TEST is the filename you chose.)
 
-  4. This saves the whole file	(Vim Tutor)  under the name TEST.
-     To verify this, type    :!dir   again to see your directory
+  4. This saves the whole file (the Vim Tutor) under the name TEST.
+     To verify this, type    :!dir  or  :!ls   again to see your directory.
 
-Note: If you were to exit Vim and enter again with the filename TEST, the file
+Note: If you were to exit Vim and start it again with  vim TEST , the file
       would be an exact copy of the tutor when you saved it.
 
   5. Now remove the file by typing (MS-DOS):    :!del TEST
@@ -550,49 +643,49 @@ Note: If you were to exit Vim and enter 
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		    Lesson 5.3: A SELECTIVE WRITE COMMAND
+		    Lesson 5.3: SELECTING TEXT TO WRITE
 
 
-	** To save part of the file, type   :#,# w FILENAME **
+	** To save part of the file, type  v  motion  :w FILENAME **
+
+  1. Move the cursor to this line.
 
-  1. Once again, type  :!dir  or  :!ls  to obtain a listing of your directory
-     and choose a suitable filename such as TEST.
+  2. Press  v  and move the cursor to the fifth item below.  Notice that the
+     text is highlighted.
 
-  2. Move the cursor to the top of this page and type  Ctrl-g  to find the
-     number of that line.  REMEMBER THIS NUMBER!
+  3. Press the  :  character.  At the bottom of the screen  :'<,'> will appear.
 
-  3. Now move to the bottom of the page and type  Ctrl-g again.  REMEMBER THIS
-     LINE NUMBER ALSO!
+  4. Type  w TEST  , where TEST is a filename that does not exist yet.  Verify
+     that you see  :'<,'>w TEST  before you press Enter.
 
-  4. To save ONLY a section to a file, type   :#,# w TEST   where #,# are
-     the two numbers you remembered (top,bottom) and TEST is your filename.
+  5. Vim will write the selected lines to the file TEST.  Use  :!dir  or  !ls
+     to see it.  Do not remove it yet!  We will use it in the next lesson.
 
-  5. Again, see that the file is there with  :!dir  but DO NOT remove it.
-
-
-
+NOTE:  Pressing  v  starts Visual selection.  You can move the cursor around
+       to make the selection bigger or smaller.  Then you can use an operator
+       to do something with the text.  For example,  d  deletes the text.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 		   Lesson 5.4: RETRIEVING AND MERGING FILES
 
 
-       ** To insert the contents of a file, type   :r FILENAME **
+       ** To insert the contents of a file, type  :r FILENAME  **
 
-  1. Type   :!dir   to make sure your TEST filename is present from before.
-
-  2. Place the cursor at the top of this page.
+  1. Place the cursor just above this line.
 
-NOTE:  After executing Step 3 you will see Lesson 5.3.	Then move DOWN to
-       this lesson again.
+NOTE:  After executing Step 2 you will see text from Lesson 5.3.  Then move
+       DOWN to see this lesson again.
 
-  3. Now retrieve your TEST file using the command   :r TEST   where TEST is
-     the name of the file.
+  2. Now retrieve your TEST file using the command   :r TEST   where TEST is
+     the name of the file you used.
+     The file you retrieve is placed below the cursor line.
 
-NOTE:  The file you retrieve is placed starting where the cursor is located.
-
-  4. To verify that a file was retrieved, cursor back and notice that there
+  3. To verify that a file was retrieved, cursor back and notice that there
      are now two copies of Lesson 5.3, the original and the file version.
 
+NOTE:  You can also read the output of an external command.  For example,
+       :r !ls  reads the output of the ls command and puts it below the
+       cursor.
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -608,14 +701,14 @@ NOTE:  The file you retrieve is placed s
 
   2.  :w FILENAME  writes the current Vim file to disk with name FILENAME.
 
-  3.  :#,#w FILENAME  saves the lines # through # in file FILENAME.
+  3.  v  motion  :w FILENAME  saves the Visually selected lines in file
+      FILENAME.
 
-  4.  :r FILENAME  retrieves disk file FILENAME and inserts it into the
-      current file following the cursor position.
+  4.  :r FILENAME  retrieves disk file FILENAME and puts it below the
+      cursor position.
 
-
-
-
+  5.  :r !dir  reads the output of the dir command and puts it below the
+      cursor position
 
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -626,17 +719,17 @@ NOTE:  The file you retrieve is placed s
 
   1. Move the cursor to the line below marked --->.
 
-  2. Type  o (lowercase) to open up a line BELOW the cursor and place you in
-     Insert mode.
+  2. Type the lowercase letter  o  to open up a line BELOW the cursor and place
+     you in Insert mode.
 
-  3. Now copy the line marked ---> and press <ESC> to exit Insert mode.
+  3. Now type some text and press <ESC> to exit Insert mode.
 
 ---> After typing  o  the cursor is placed on the open line in Insert mode.
 
   4. To open up a line ABOVE the cursor, simply type a capital	O , rather
      than a lowercase  o.  Try this on the line below.
-Open up a line above this by typing Shift-O while the cursor is on this line.
 
+---> Open up a line above this by typing O while the cursor is on this line.
 
 
 
@@ -647,94 +740,117 @@ Open up a line above this by typing Shif
 
 	     ** Type  a  to insert text AFTER the cursor. **
 
-  1. Move the cursor to the end of the first line below marked ---> by
-     typing  $	in Normal mode.
+  1. Move the cursor to the start of the line below marked --->.
+  
+  2. Press  e  until the cursor is on the end of  li .
 
-  2. Type an  a  (lowercase) to append text AFTER the character under the
-     cursor.  (Uppercase  A  appends to the end of the line.)
+  3. Type an  a  (lowercase) to append text AFTER the cursor.
 
-Note: This avoids typing  i , the last character, the text to insert, <ESC>,
-      cursor-right, and finally, x , just to append to the end of a line!
+  4. Complete the word like the line below it.  Press <ESC> to exit Insert
+     mode.
 
-  3. Now complete the first line.  Note also that append is exactly the same
-     as Insert mode, except for the location where text is inserted.
+  5. Use  e  to move to the next incomplete word and repeat steps 3 and 4.
+  
+---> This li will allow you to pract appendi text to a line.
+---> This line will allow you to practice appending text to a line.
 
----> This line will allow you to practice
----> This line will allow you to practice appending text to the end of a line.
-
-
+Note:  a, i and A all go to the same Insert mode, the only difference is where
+       the characters are inserted.
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		    Lesson 6.3: ANOTHER VERSION OF REPLACE
+		    Lesson 6.3: ANOTHER WAY TO REPLACE
 
 
       ** Type a capital  R  to replace more than one character. **
 
-  1. Move the cursor to the first line below marked --->.
+  1. Move the cursor to the first line below marked --->.  Move the cursor to
+     the beginning of the first  xxx .
 
-  2. Place the cursor at the beginning of the first word that is different
-     from the second line marked ---> (the word 'last').
+  2. Now press  R  and type the number below it in the second line, so that it
+     replaces the xxx .
+
+  3. Press <ESC> to leave Replace mode.  Notice that the rest of the line
+     remains unmodified.
 
-  3. Now type  R  and replace the remainder of the text on the first line by
-     typing over the old text to make the first line the same as the second.
+  5. Repeat the steps to replace the remaining xxx.
+
+---> Adding 123 to xxx gives you xxx.
+---> Adding 123 to 456 gives you 579.
 
----> To make the first line the same as the last on this page use the keys.
----> To make the first line the same as the second, type R and the new text.
+NOTE:  Replace mode is like Insert mode, but every typed character deletes an
+       existing character.
 
-  4. Note that when you press <ESC> to exit, any unaltered text remains.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+			Lesson 6.4: COPY AND PASTE TEXT
 
 
+	  ** use the  y  operator to copy text and  p  to paste it **
 
+  1. Go to the line marked with ---> below and place the cursor after "a)".
+  
+  2. Start Visual mode with  v  and move the cursor to just before "first".
+  
+  3. Type  y  to yank (copy) the highlighted text.
 
+  4. Move the cursor to the end of the next line:  j$
 
+  5. Type  p  to put (paste) the text.  Then type:  a second <ESC> .
+
+  6. Use Visual mode to select " item.", yank it with  y , move to the end of
+     the next line with  j$  and put the text there with  p .
+
+--->  a) this is the first item.
+      b)
+
+  Note: you can also use  y  as an operator;  yw  yanks one word.
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-			    Lesson 6.4: SET OPTION
+			    Lesson 6.5: SET OPTION
+
 
 	  ** Set an option so a search or substitute ignores case **
 
-  1. Search for 'ignore' by entering:
-     /ignore
-     Repeat several times by hitting the n key
+  1. Search for 'ignore' by entering:   /ignore  <ENTER>
+     Repeat several times by pressing  n .
 
-  2. Set the 'ic' (Ignore case) option by typing:
-     :set ic
+  2. Set the 'ic' (Ignore case) option by entering:   :set ic
+
+  3. Now search for 'ignore' again by pressing  n
+     Notice that Ignore and IGNORE are now also found.
 
-  3. Now search for 'ignore' again by entering: n
-     Repeat search several more times by hitting the n key
+  4. Set the 'hlsearch' and 'incsearch' options:  :set hls is
 
-  4. Set the 'hlsearch' and 'incsearch' options:
-     :set hls is
+  5. Now type the search command again and see what happens:  /ignore <ENTER>
 
-  5. Now enter the search command again, and see what happens:
-     /ignore
+  6. To disable ignoring case enter:  :set noic
 
-  6. To remove the highlighting of matches, type:
-     :nohlsearch
+Note:  To remove the highlighting of matches enter:   :nohlsearch 
+Note:  If you want to ignore case for just one search command, use  \c
+       in the phrase:  /ignore\c  <ENTER>
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 			       LESSON 6 SUMMARY
 
-
-  1. Typing  o	opens a line BELOW the cursor and places the cursor on the open
-     line in Insert mode.
-     Typing a capital  O  opens the line ABOVE the line the cursor is on.
+  1. Type  o  to open a line BELOW the cursor and start Insert mode.
+     Type  O  to open a line ABOVE the cursor.
 
-  2. Type an  a  to insert text AFTER the character the cursor is on.
-     Typing a capital  A  automatically appends text to the end of the line.
+  2. Type  a  to insert text AFTER the cursor.
+     Type  A  to insert text after the end of the line.
 
-  3. Typing a capital  R  enters Replace mode until  <ESC>  is pressed to exit.
+  3. The  e  command moves to the end of a word.
+
+  4. The  y  operator yanks (copies) text,  p  puts (pastes) it.
 
-  4. Typing ":set xxx" sets the option "xxx"
-
-
-
+  5. Typing a capital  R  enters Replace mode until  <ESC>  is pressed.
 
-
+  6. Typing ":set xxx" sets the option "xxx".  Some options are:
+  	'ic' 'ignorecase'	ignore upper/lower case when searching
+	'is' 'incsearch'	show partial matches for a search phrase
+	'hls' 'hlsearch'	highlight all matching phrases
+     You can either use the long or the short option name.
 
-
-
+  7. Prepend "no" to switch an option off:   :set noic
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		       LESSON 7: ON-LINE HELP COMMANDS
+		       LESSON 7.1: GETTING HELP
 
 
 		      ** Use the on-line help system **
@@ -745,39 +861,85 @@ Note: This avoids typing  i , the last c
 	- press the <F1> key (if you have one)
 	- type   :help <ENTER>
 
-  Type   :q <ENTER>   to close the help window.
+  Read the text in the help window to find out how the help works.
+  type  CTRL-W CTRL-W   to jump from one window to another
+  Type    :q <ENTER>    to close the help window.
 
   You can find help on just about any subject, by giving an argument to the
   ":help" command.  Try these (don't forget pressing <ENTER>):
 
 	:help w
-	:help c_<T
+	:help c_CTRL-D
 	:help insert-index
 	:help user-manual
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+		      LESSON 7.2: CREATE A STARTUP SCRIPT
 
 
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-		       LESSON 8: CREATE A STARTUP SCRIPT
+			  ** Enable Vim features **
 
-			  ** Switch on Vim features **
-
-  Vim has many more features than Vi, but most of them are disabled by default.
-  To start using more features you have to create a "vimrc" file.
+  Vim has many more features than Vi, but most of them are disabled by
+  default.  To start using more features you have to create a "vimrc" file.
 
-  1. Start editing the "vimrc" file, this depends on your system:
-	:edit ~/.vimrc			for Unix
-	:edit $VIM/_vimrc		for MS-Windows
+  1. Start editing the "vimrc" file.  This depends on your system:
+	:e ~/.vimrc		for Unix
+	:e $VIM/_vimrc		for MS-Windows
 
-  2. Now read the example "vimrc" file text:
-
-	:read $VIMRUNTIME/vimrc_example.vim
+  2. Now read the example "vimrc" file contents:
+	:r $VIMRUNTIME/vimrc_example.vim
 
   3. Write the file with:
-
-	:write
+	:w
 
   The next time you start Vim it will use syntax highlighting.
   You can add all your preferred settings to this "vimrc" file.
+  For more information type  :help vimrc-intro
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+			     LESSON 7.3: COMPLETION
+
+
+	      ** Command line completion with CTRL-D and <TAB> **
+
+  1. Make sure Vim is not in compatible mode:  :set nocp
+
+  2. Look what files exist in the directory:  :!ls   or  :!dir
+
+  3. Type the start of a command:  :e
+
+  4. Press  CTRL-D  and Vim will show a list of commands that start with "e".
+
+  5. Press <TAB>  and Vim will complete the command name to ":edit".
+
+  6. Now add a space and the start of an existing file name:  :edit FIL
+
+  7. Press <TAB>.  Vim will complete the name (if it is unique).
+
+NOTE:  Completion works for many commands.  Just try pressing CTRL-D and
+       <TAB>.  It is especially useful for  :help .
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+			       LESSON 7 SUMMARY
+
+
+  1. Type  :help  or press <F1> or <Help>  to open a help window.
+
+  2. Type  :help cmd  to find help on  cmd .
+
+  3. Type  CTRL-W CTRL-W  to jump to another window
+
+  4. Type  :q  to close the help window
+
+  5. Create a vimrc startup script to keep your preferred settings.
+
+  6. When typing a  :  command, press CTRL-D to see possible completions.
+     Press <TAB> to use one completion.
+
+
+
+
+
+
 
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~