diff --git a/lab01/a b/lab01/a
new file mode 100644
index 0000000000000000000000000000000000000000..b9f90c733e8c57062ae0bccc8a970ecc5175811c
--- /dev/null
+++ b/lab01/a
@@ -0,0 +1,7 @@
+huihuhuhwuehdeddd
+
+
+dkhddsd
+
+
+
diff --git a/lab01/funny b/lab01/funny
new file mode 100644
index 0000000000000000000000000000000000000000..8c25de3c1a6687ce25a7d2afb6d5ce6bb7585f1f
--- /dev/null
+++ b/lab01/funny
@@ -0,0 +1,167 @@
+Tormenting Telemarketers
+
+THIS IS WHERE THE CHANGE IS!!!!!
+
+Tormenting Telemarketers: A Game You Can Play at Home!
+
+Everyone has gotten a call from a Telemarketer. The new Scourge of the
+Telephone System. Previously when the phone rang, you always wondered if it was
+someone you knew, or another schmuck with something to sell. Well, the time has
+come to turn the tables. We need to take control of our own phones. We need to
+take the ``market'' out of Telemarketing.
+
+Premise:
+ Telemarketers take the brute force approach to making sales. If you talk to a
+ whole bunch of people, someone will buy what you are selling.
+
+Counter-Tactic:
+ Waste as much of their time as you can. For each minute that you waste means
+ several potential customers that will not be reached. Make Telemarketing
+ unprofitable. Hanging up only increases the changes for them to make a sale.
+ Don't let this happen!
+
+Hints:
+ Most of the preliminary stuff is done by someone making minimum wage, and
+ reads a script. Let them finish. It's easy points, and you were watching Star Trek
+ and weren't using your phone anyway. It's easy to keep them interested using
+ ``attentive grunting'', similar to when your mother calls.
+
+Scoring:
+
+ Basic Point System:
+
+ For each minute spent on the phone 10 pts.
+ Getting transfered to someone who makes
+ more than minimum wage 15 pts
+ For each minute spent on the phone with
+ person making more than minimum wage 25 pts
+
+ Bonus Points:
+
+ Getting them to repeat part of the "script" 5 pts/each
+ Getting answers to stupid questions 15 pts/each
+ Changing the subject 50 pts/each
+ Making the sales person angry 175 pts
+ Making the sales person use profanity 750 pts
+ Get their boss on the phone, and tell them
+ the salesman used profanity 1500 pts
+ Getting their 1-800- number 10 pts
+ Posting their 1-800- number to alt.sex as
+ a free "Phone Sex" line 50 pts
+ Checking the number a week later and it is
+ busy or disconnected 5000 pts
+
+Example:
+
+ <Ring>
+ Me: Yes?
+ Them: Hi, I'm with Fly-By-Night Carpet Cleaning
+ and we're in your area [...] [start clock->]
+ Them: [...] would like to know it you are interested?
+ Me: Sure...
+ Them: Well, we are currently offering [...]
+ Them: [...] depending on the size of the rooms.
+ Me: Well, how much for the whole house?
+ Them: Let me transfer you to <???> [15 bonus pts!]
+ Them: Sir?
+ Me: Yes?
+ Them: How large is your house? [25 pts/min!]
+ Me: Oh, about 2,000 sqft.
+ Them: [...] Well, that would be about $xxx
+ Me: It won't hurt the floor, will it? [stupid ?]
+ Them: Oh, no! We use a [...this usually takes some time!...]
+ and is completely safe.
+ Me: Even with my pets? [stupid ?]
+ Them: Oh, yes. The chemicals we use [...]
+ Me: Do you have to pre-treat, since I have pets?
+ Them: Yes, and we do that with [...] [repeat!]
+ Me: But the original offer was for $39.95, does that
+ include treating for pets?
+ Them: [...]
+ Me: Well, it is kindof dirty. The guys were over for
+ the game. Did you see the Cowboys vs. the Rams?
+ [subject change]
+ Them: Yes.
+ Me: What a game! That last touchdown pass! Wasn't that
+ a great play?
+ Them: Well, back to your house...
+ Me: Oh yes, what about moving the furniture?
+ Them: [...]
+ Me: Do you clean furniture, too? Those guys spilled some
+ beer. Have you smelled old beer on furniture before?
+ But what a game, eh?! I couldn't believe that they
+ couldn't move the ball in the second quarter...
+ [...] [subject change]
+ Them: Ahem... Would you like us to come out? [angry???]
+ Me: Well, when could you come out?
+ Them: How about next week?
+ Me: Hmmm... Morning or afternoon?
+ Them: Either would be fine.
+ Me: Do you have anything the week after?
+ Them: Sure, can I put you down for Tuesday?
+
+ [Okay, let's try for those last big bonus points:]
+
+ Me: Well, I don't think it matters, since I have all
+ hardwood floors here!
+ Them: Dammit! <Yes! 250 points!>
+ <click>
+
+
+
+Subject: More games to play with telemarketers
+From: arch@jmuarch.cs.jmu.edu (arch harris)
+Date: Sun, 30 May 93 4:30:02 EDT
+
+Some additional ``games'' one can play with telemarketers:
+
+ 1. If you recognize they are telemarketers before you have spoken, pretend you
+are an answering machine with a message along these lines. ``Thank you for
+calling CMTCC, Citizens for Making Telemarketing a Capital Crime. We now have
+the support of about 25% of the legislature. Soon we will be able to execute
+those worthless, money grubbing dregs, making the earth a better place to live.
+Please send your tax deductible contribution to...''
+
+ 2. See how many times you can put them on hold. First make sure you get the
+name of the person you are talking to, because sooner or later they will hang
+up. Then if they call you again, you can express your righteous indignation at
+being hung up on, and let them know you were going to buy/contribute, but given
+the rudeness of ... you have decided not to. They key to this one is make the
+time they have to hold fairly short. After 30 seconds or so tell them you have
+to turn down the stove and put them on hold for 45 secs. On returning, ask them
+to start their pitch again. Every time you return have them restart their
+pitch. Some good excuses for putting them on hold for a short while: the kids
+are fighting, the pet needs to go in/out, the baby is into ?, someone is at the
+door, you have a call on another line, ...
+
+ 3. If you have an answering machine, turn it on so they can here you are
+recording the call. Make sure you get the person's name, and the company's name
+and address. Then inform them something like this. ``Under state law I am
+hereby notifying you that you (you as an individual and the company) are
+prohibited from calling this number (xxx-xxxx) to solicit ever again. If you or
+the company calls again, you personally and the company will be liable for
+penalties up to $10,000. Is this clear?'' Just something to hopefully make
+them nervous. (Actually Virginia came pretty close to passing a law like this.
+Unfortunately, the telemarketing lobby bribed our legislature into killing the
+bill. Maybe next year...)
+
+ 4. After they have gone through their entire sales pitch, tell them how
+interested you are. But first, you want to talk to them about ... Then launch
+into a pitch for them to contribute to some charity that sounds quasi-legit but
+is really just for your personal benefit. If they do not contribute, then hang
+up in righteous indignation that they are such uncaring human beings. If they
+will, give then a address to send the contribution to, thank them, and hang up
+before they have a chance to change the subject back to what they called you
+about.
+
+ 5. After they have given their entire sales pitch, say you are interested but
+first you need the telemarketer's personal home phone number. When they ask
+why tell them that they have your personal home number so before you complete
+the deal, you want to be on even ground with them and you need their number. If
+they don't give it to you, yup, you guessed it, hangup in righteous
+indignation. If they do, say you will call back to order/contribute. Then do so
+at some reasonable hour, in case they have given you a phony number. But if it
+is a correct number, post it on the net. Not so anyone would harrass this
+person, ;) but so all of us would have the opportunity to contact this person
+about whatever it is that is being telemarketed. And since so many of us are
+night owls, we will be calling at a time convenient to us, like 4 am. ;)
diff --git a/lab01/hello.bash b/lab01/hello.bash
new file mode 100644
index 0000000000000000000000000000000000000000..bb9800dc35bc67808f2304dca7ea4c5a316fd1b0
--- /dev/null
+++ b/lab01/hello.bash
@@ -0,0 +1,19 @@
+#!/bin/bash
+# hello - just a simple script for demonstration of chmod
+#
+# Kurt Schmidt
+#
+# 1/04
+#
+# Demonstrates: echo
+#
+
+clear
+echo " "
+echo " "
+echo " "
+echo "Hellooooo! My name is $USER. Have a good break?"
+echo " "
+echo " "
+echo " "
+
diff --git a/lab01/lab1 b/lab01/lab1
index a01d273e178417513e46c0602fdeb1158b8fb518..ddb58c27519e4f657afa78ae64cc06b400854403 100644
--- a/lab01/lab1
+++ b/lab01/lab1
@@ -1 +1,39 @@
-1.Hello?
+Q1: Complete all edits in this file, as directed by the file, save as vi_lab, and submit along w/your lab.
+Q2: -rw-r--r-- 1 hdd29 hdd29 8060 Apr 7 18:18 funny
+-rwxr-xr-x 1 hdd29 hdd29 240 Apr 7 18:18 hello.bash
+-rw-rw-r-- 1 hdd29 hdd29 60 Apr 7 00:46 lab1
+-rw-rw-r-- 1 hdd29 hdd29 44 Apr 7 00:54 tutor
+-rw-rw-r-- 1 hdd29 hdd29 33224 Apr 7 01:08 vi_lab
+Q3: If enter chmod 644, permission will be: personal: read and write, group: read only, public: read only
+Q4:If enter chmod 755, permission will be: personal: read, write and execute, group&public: read and execute
+Q5: yes, you can read because 6 = 4+2 and 4 is read
+Q6: Yes you can read it, the same reason as the above
+Q7: No I were not.It said "Permission denied"
+Q8: Either typing 'chmod 7xx hello.bash' (with x is any number validly correspond to the permission) or use command 'bash hello.bash' to open up an environment for hello.bash first then open the file in that environment
+Q9:The change made in 'funny' is saved. I had the permission to read and write the file
+Q10:
+These are the things that happened:
+
+hdd29@tux3:~/CS265$ ls *
+annoy annoy.cc itemList itemList-2cols TelecomTruths UnitTestingPhase
+
+FirstLab:
+
+Lab1:
+lab01
+
+hdd29@tux3:~/CS265$ ls a*
+annoy annoy.cc
+
+hdd29@tux3:~/CS265$ ls *m*
+itemList itemList-2cols TelecomTruths
+
+hdd29@tux3:~/CS265$ ls anno?
+annoy
+
+hdd29@tux3:~/CS265$ ls annoy?
+ls: cannot access 'annoy?': No such file or directory
+
+Q11: It was saying that there is 2 files to edit. However, when doing ls at the directory, it only listed out the file with the name before the [space] sympbol: a
+
+
diff --git a/lab01/public_html/index.html b/lab01/public_html/index.html
new file mode 100644
index 0000000000000000000000000000000000000000..fa7c5ed5469512b7010af4700d52e481bded8dce
--- /dev/null
+++ b/lab01/public_html/index.html
@@ -0,0 +1,115 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+ <meta http-equiv="content-language" content="en-us">
+ <meta name="author" content="not me">
+ <title>Hanh page</title>
+</head>
+<body bgcolor="#fffff">
+ <!-- get your own backgrounds (steal them from somebody besides me) -->
+
+<center>
+<h1>This is Hanh's page</h1></center>
+
+<center>
+<h2>
+<a href="http://www.cs.drexel.edu/">Department of Computer Science<br>
+</a>at <a href="http://www.drexel.edu">Drexel University</a></h2></center>
+
+<table width="90%">
+ <tr>
+ <th align="left" width="20%">Major:</th>
+ <td>Computer Engineering</td>
+ </tr>
+ <tr>
+ <th align="left">Office:</th>
+ <td>Kulicke and Soffa</td>
+ </tr>
+ <tr>
+ <th align="left">Email:</th>
+ <td>
+ <a href="mailto:hdd29@drexel.edu">hdd29@drexel.edu</a>
+ </td>
+ </tr>
+ <tr>
+ <th align="left">Phone:</th>
+ <td>2672853736</td>
+ </tr>
+ <tr>
+ <th align="left" valign="top">Minor</th>
+ <td>CS maybe</td>
+ </tr>
+</table>
+<hr width="100%">
+
+<table>
+ <tr>
+ <td valign="top">I will not change this just for today. But this is to prove that I can
+ I had the poor luck to attend a meeting after sleeping
+ all night on a rug. :/
+ <p>You can align images right or left, but it gets messy. The easiest
+ thing to do, if you don't want text around your image, is to just wrap
+ it with a paragraph tag:<br>
+ <tt><p align='center'><img
+ src="/~kschmidt/images/kurtRug.jpeg">
+ </p></tt>
+ <p>But for placement, you'll want to pull out a table, and place the
+ image in one of the cells, as is done here
+ </td>
+ <td><img src="http://www.cs.drexel.edu/~kschmidt/images/kurtRug.jpeg"></td>
+ </tr>
+</table>
+<h2>Course(s) I'm Currently Taking</h2>
+
+<ul>
+ <li>CS265</li>
+ <li>That is it, nothing more</li>
+ <li>Im on co op actually</li>
+</ul>
+
+<hr size="6" color="#0000cc">
+
+<p>Different color?
+
+<hr size="6" color="#996699">
+
+<h2>Some Links I Get a Kick Out Of</h2>
+
+<ol>
+ <li><a href="https://www.youtube.com/watch?v=R__1rgcRvYM">Cute Beagle puppy compilation</a></li>
+ <li><a href="http://www.doonesbury.com/">Doonesbury Electronic Town
+ Hall</a></li>
+ <li><a
+ href="http://www.xmission.com/~mwalker/dq/quayle/qq/quayle.quotes.html">
+ Dan Quayle Quotes</a> (I know, he's been gone a while, but I just can't
+ give it up)</li>
+</ol>
+
+<hr>
+<p>Here's a table w/borders:
+
+<table border="1" width="25%">
+ <tr>
+ <th width="33%"> </th>
+ <th width="33%">2</th>
+ <th width="33%">4</th>
+ </tr>
+ <tr>
+ <th>2</th>
+ <td>4</td>
+ <td>8</td>
+ </tr>
+ <tr>
+ <th>4</th>
+ <td>8</td>
+ <td>16</td>
+ </tr>
+</table>
+
+
+<hr width="100%">
+<font size="-1">Last updated Aril 7</font>
+
+</body>
+</html>
diff --git a/lab01/tutor b/lab01/tutor
new file mode 100644
index 0000000000000000000000000000000000000000..3dcde97262b61eaf53ee66e1f5c31a48a2462210
--- /dev/null
+++ b/lab01/tutor
@@ -0,0 +1,11 @@
+hdjhjhjs
+
+
+djsjshd
+sdsd
+
+
+sdsdsd
+
+
+dsdsdssd
diff --git a/lab01/vi_lab b/lab01/vi_lab
new file mode 100644
index 0000000000000000000000000000000000000000..15eff3ca9e9829dfb0aa218f49032edf9a8d9db7
--- /dev/null
+++ b/lab01/vi_lab
@@ -0,0 +1,967 @@
+===============================================================================
+= 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
+ explain in a tutor such as this. This tutor is designed to describe
+ enough of the commands that you will be able to easily use Vim as
+ an all-purpose editor.
+
+ 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 practice on (if you started "vimtutor" this is already a copy).
+
+ It is important to remember that this tutor is set up to teach by
+ use. That means that you need to execute the commands to learn them
+ properly. If you only read the text, you will forget the commands!
+
+ Now, make sure that your Shift-Lock key is NOT depressed and press
+ the j key enough times to move the cursor so that Lesson 1.1
+ completely fills the screen.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 1.1: MOVING THE CURSOR
+
+
+ ** To move the cursor, press the h,j,k,l keys as indicated. **
+ ^
+ k Hint: The h key is at the left and moves left.
+ < h l > The l key is at the right and moves right.
+ j The j key looks like a down arrow.
+ v
+ 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.
+
+ 3. Using the down key, move to Lesson 1.2.
+
+NOTE: If you are ever unsure about something you typed, press <ESC> to place
+ 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. Really!
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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, DISCARDING any changes you have made.
+
+ 3. Get back here by executing the command that got you into this tutor. That
+ might 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.
+
+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
+
+
+ ** Press x to delete the character under the cursor. **
+
+ 1. Move the cursor to the line below marked --->.
+
+ 2. To fix the errors, move the cursor until it is on top of the
+ character to be deleted.
+
+ 3. Press the x key to delete the unwanted character.
+
+ 4. Repeat steps 2 through 4 until the sentence is correct.
+
+---> The cow jumped over the moon.
+
+ 5. Now that the line is correct, go on to Lesson 1.4.
+
+NOTE: As you go through this tutor, do not try to memorize, learn by usage.
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 1.4: TEXT EDITING - INSERTION
+
+
+ ** Press i to insert text. **
+
+ 1. Move the cursor to the first line below marked --->.
+
+ 2. To make the first line the same as the second, move the cursor on top
+ of the first character AFTER where the text is to be inserted.
+
+ 3. Press i and type in the necessary additions.
+
+ 4. As each error is fixed press <ESC> to return to Normal mode.
+ Repeat steps 2 through 4 to correct the sentence.
+
+---> There is some text missing from this line.
+---> There is some text missing from this line.
+
+ 5. When you are comfortable inserting text move to lesson 1.5.
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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 this line.
+ There is some text missing from this line.
+---> There is also some text missing on this line.
+ 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!
+ Or, if you have access to another terminal, do the following there.
+
+ 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. If you have quit vimtutor in step 1 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 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 the character at the cursor type: x
+
+ 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 a word. **
+
+ 1. Press <ESC> to make sure you are in Normal mode.
+
+ 2. Move the cursor to the line below marked --->.
+
+ 3. Move the cursor to the beginning of a word that needs to be deleted.
+
+ 4. Type dw to make the word disappear.
+
+ 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 some words that don't belong 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
+
+
+ ** Type d$ to delete to the end of the line. **
+
+ 1. Press <ESC> to make sure you are in Normal mode.
+
+ 2. Move the cursor to the line below marked --->.
+
+ 3. Move the cursor to the end of the correct line (AFTER the first . ).
+
+ 4. Type d$ to delete to the end of the line.
+
+---> Somebody typed the end of this line twice.
+
+
+ 5. Move on to Lesson 2.3 to understand what is happening.
+
+
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 2.3: ON OPERATORS AND MOTIONS
+
+
+ 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:
+
+ d motion
+
+ Where:
+ 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.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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.
+
+ 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.5: USING A COUNT TO DELETE MORE
+
+
+ ** 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 d2w 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.
+
+
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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 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 to delete two lines.
+
+---> 1) Roses are red,
+---> 3) Violets are blue,
+---> 6) Sugar is sweet
+---> 7) And so are you.
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 2.7: THE UNDO COMMAND
+
+
+ ** 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.
+ 2. Type x to delete the first unwanted character.
+ 3. Now type u to undo the last command executed.
+ 4. This time fix all the errors on the line using the x command.
+ 5. Now type a capital U to return the line to its original state.
+ 6. Now type u a few times to undo the U and preceding commands.
+ 7. Now type CTRL-R (keeping CTRL key pressed while hitting R) a few times
+ to redo the commands (undo the undo's).
+
+---> Fix the errors on this line and replace them with undo.
+
+ 8. These are very useful commands. Now move on to the Lesson 2 Summary.
+
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 2 SUMMARY
+
+
+ 1. To delete from the cursor up to 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. To repeat a motion prepend it with a number: 2w
+ 5. The format for a change command is:
+ operator [number] motion
+ where:
+ 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 operate on, such as w (word),
+ $ (to the end of line), etc.
+
+ 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 previously deleted text after the cursor. **
+
+ 1. Move the cursor to the first ---> line below.
+
+ 2. Type dd to delete the line and store it in a Vim register.
+
+ 3. Move the cursor to the c) line, ABOVE where the deleted line should go.
+
+ 4. Type p to put the line below the cursor.
+
+ 5. Repeat steps 2 through 4 to put all the lines in correct order.
+
+---> a) Roses are red,
+---> b) Violets are blue,
+---> c) Intelligence is learned,
+---> d) Can you learn too?
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 3.2: THE REPLACE COMMAND
+
+
+ ** 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 be there.
+
+ 4. Repeat steps 2 and 3 until the first line is equal to the second one.
+
+---> Whan this lime was typed in, someone pressed some wrong keys!
+---> When this line was typed in, someone pressed some wrong keys!
+
+ 5. Now move on to Lesson 3.3.
+
+NOTE: Remember that you should be learning by doing, not memorization.
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 3.3: THE CHANGE OPERATOR
+
+
+ ** 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.
+
+ 3. Type ce and the correct word (in this case, type ine ).
+
+ 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 line has a few words that need changing using the change operator.
+---> This line has a few words that need changing using the change operator.
+
+Notice that ce deletes the word and places you in Insert mode.
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 3.4: MORE CHANGES USING c
+
+
+ ** The change operator is used with the same motions as delete. **
+
+ 1. The change operator works in the same way as delete. The format is:
+
+ c [number] motion
+
+ 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$ and type the rest of the line like the second and press <ESC>.
+
+---> The end of this line needs to be corrected using the c$ command.
+---> 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 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 you want to have there.
+
+ 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:
+
+ c [number] motion
+
+Now go on to the next lesson.
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 4.1: CURSOR LOCATION AND FILE STATUS
+
+ ** 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 . 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.
+
+NOTE: You may see the cursor position in the lower right corner of the screen
+ This happens when the 'ruler' option is set (see :help 'ruler' )
+
+ 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
+
+
+ ** Type / followed by a phrase to search for the phrase. **
+
+ 1. In Normal mode type the / character. Notice that it and the cursor
+ appear at the bottom of the screen as with the : command.
+
+ 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 N .
+
+ 4. To search for a phrase in the backward direction, use ? instead of / .
+
+ 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.
+
+---> "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, unless the 'wrapscan' option has been reset.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 4.3: MATCHING PARENTHESES SEARCH
+
+
+ ** Type % to find a matching ),], or } . **
+
+ 1. Place the cursor on any (, [, or { in the line below marked --->.
+
+ 2. Now type the % character.
+
+ 3. The cursor will move to the matching parenthesis or bracket.
+
+ 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: THE SUBSTITUTE COMMAND
+
+
+ ** Type :s/old/new/g to substitute 'new' for 'old'. **
+
+ 1. Move the cursor to the line below marked --->.
+
+ 2. Type :s/thee/the <ENTER> . Note that this command only changes the
+ first occurrence of "thee" in 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 line numbers of the range
+ of lines where the substitution 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 whether to substitute or not.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 4 SUMMARY
+
+
+ 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 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 } goes to its match.
+
+ 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
+
+
+ ** 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-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.
+
+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 on we will not always mention it.
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 5.2: MORE ON WRITING FILES
+
+
+ ** 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.
+
+ 2. Choose a filename that does not exist yet, such as TEST.
+
+ 3. Now type: :w TEST (where TEST is the filename you chose.)
+
+ 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 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
+ or (Unix): :!rm TEST
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 5.3: SELECTING TEXT TO WRITE
+
+
+ ** To save part of the file, type v motion :w FILENAME **
+
+ 1. Move the cursor to this line.
+
+ 2. Press v and move the cursor to the fifth item below. Notice that the
+ text is highlighted.
+
+ 3. Press the : character. At the bottom of the screen :'<,'> will appear.
+
+ 4. Type w TEST , where TEST is a filename that does not exist yet. Verify
+ that you see :'<,'>w TEST before you press <ENTER>.
+
+ 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.
+
+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 **
+
+ 1. Place the cursor just above this line.
+
+NOTE: After executing Step 2 you will see text from Lesson 5.3. Then move
+ DOWN to see this lesson again.
+
+ 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.
+
+ 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.
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 5 SUMMARY
+
+
+ 1. :!command executes an external command.
+
+ Some useful examples are:
+ (MS-DOS) (Unix)
+ :!dir :!ls - shows a directory listing.
+ :!del FILENAME :!rm FILENAME - removes file FILENAME.
+
+ 2. :w FILENAME writes the current Vim file to disk with name FILENAME.
+
+ 3. v motion :w FILENAME saves the Visually selected lines in file
+ FILENAME.
+
+ 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.
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 6.1: THE OPEN COMMAND
+
+
+ ** Type o to open a line below the cursor and place you in Insert mode. **
+
+ 1. Move the cursor to the line below marked --->.
+
+ 2. Type the lowercase letter o to open up a line BELOW the cursor and place
+ you in 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 O while the cursor is on this line.
+
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 6.2: THE APPEND COMMAND
+
+
+ ** Type a to insert text AFTER the cursor. **
+
+ 1. Move the cursor to the start of the line below marked --->.
+
+ 2. Press e until the cursor is on the end of li .
+
+ 3. Type an a (lowercase) to append text AFTER the cursor.
+
+ 4. Complete the word like the line below it. Press <ESC> to exit Insert
+ mode.
+
+ 5. Use e to move to the next incomplete word and repeat steps 3 and 4.
+
+---> This line will allow you to practice appending text to a line.
+---> This line will allow you to practice appending text to 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 WAY TO REPLACE
+
+
+ ** Type a capital R to replace more than one character. **
+
+ 1. Move the cursor to the first line below marked --->. Move the cursor to
+ the beginning of the first xxx .
+
+ 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.
+
+ 4. Repeat the steps to replace the remaining xxx.
+
+---> Adding 123 to 001 gives you 124.
+---> Adding 123 to 456 gives you 579.
+
+NOTE: Replace mode is like Insert mode, but every typed character deletes an
+ existing character.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ 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.5: SET OPTION
+
+
+ ** Set an option so a search or substitute ignores case **
+
+ 1. Search for 'ignore' by entering: /ignore <ENTER>
+ Repeat several times by pressing n .
+
+ 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.
+
+ 4. Set the 'hlsearch' and 'incsearch' options: :set hls is
+
+ 5. Now type the search command again and see what happens: /ignore <ENTER>
+
+ 6. To disable ignoring case enter: :set noic
+
+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. Type o to open a line BELOW the cursor and start Insert mode.
+ Type O to open a line ABOVE the cursor.
+
+ 2. Type a to insert text AFTER the cursor.
+ Type A to insert text after the end of the line.
+
+ 3. The e command moves to the end of a word.
+
+ 4. The y operator yanks (copies) text, p puts (pastes) it.
+
+ 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.1: GETTING HELP
+
+
+ ** Use the on-line help system **
+
+ Vim has a comprehensive on-line help system. To get started, try one of
+ these three:
+ - press the <HELP> key (if you have one)
+ - press the <F1> key (if you have one)
+ - type :help <ENTER>
+
+ 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_CTRL-D
+ :help insert-index
+ :help user-manual
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ Lesson 7.2: CREATE A STARTUP SCRIPT
+
+
+ ** Enable 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.
+
+ 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 contents:
+ :r $VIMRUNTIME/vimrc_example.vim
+
+ 3. Write the file with:
+ :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.
+
+
+
+
+
+
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+ This concludes the Vim Tutor. It was intended to give a brief overview of
+ the Vim editor, just enough to allow you to use the editor fairly easily.
+ It is far from complete as Vim has many many more commands. Read the user
+ manual next: ":help user-manual".
+
+ For further reading and studying, this book is recommended:
+ Vim - Vi Improved - by Steve Oualline
+ Publisher: New Riders
+ The first book completely dedicated to Vim. Especially useful for beginners.
+ There are many examples and pictures.
+ See http://iccf-holland.org/click5.html
+
+ This book is older and more about Vi than Vim, but also recommended:
+ Learning the Vi Editor - by Linda Lamb
+ Publisher: O'Reilly & Associates Inc.
+ It is a good book to get to know almost anything you want to do with Vi.
+ The sixth edition also includes information on Vim.
+
+ This tutorial was written by Michael C. Pierce and Robert K. Ware,
+ Colorado School of Mines using ideas supplied by Charles Smith,
+ Colorado State University. E-mail: bware@mines.colorado.edu.
+
+ Modified for Vim by Bram Moolenaar.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~