Getting Started with Vim by Vimtutor

———————- Vim: The God of Editors ———————-

This is a simple Vim Tutorial from vim built-in documents, you can get the whole vimtutor by typing vimtutor in shell or vimtutor -g for GUI version. It is intended to give a brief overview of the Vim editor, just enough to allow you to use the editor fairly easily.

Lesson 1: Text Editing Commands

1
2
3
4
5
6
7
8
9
10
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.
OR type: <ESC> shift + zz 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

Lesson 2: Deletion Commands

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
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: d2w / 4dd
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, e, $, etc.
For exmaple: d2w: delete 2 words
d4d: delete 4 lines
6. To move to the start of the line use a zero: 0
7. To undo previous actions, type: u (lowercase u)
8. To undo all the changes on a line, type: U (capital U)
9. To undo the undo's, type: CTRL-R

Lesson 3: Replace and Change Commands

1
2
3
4
5
6
7
8
9
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 new character. eg:
Type 3rx to replace the 3 characters by 'xxx'
3. The change operator allows you to change from the cursor to the motion, 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

Lesson 4: Jump, Search, Substitute Commands

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
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: Execute External Commands

1
2
3
4
5
6
7
1. :! command executes an external command.
:!ls - shows a directory listing.
:!rm FILENAME - removes file FILENAME.
2. :w fname 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 fname retrieves disk file FILENAME and puts it below cursor position.
5. :r !ls reads the output of ls command and puts it below cursor position.

Lesson 6: Open Append Set Commands

1
2
3
4
5
6
7
8
9
10
11
12
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' or 'ignorecase' ignore upper/lower case when searching
'is' or 'incsearch' show partial matches for a search phrase
'hls' or 'hlsearch' highlight all matching phrases
7. Prepend "no" to switch an option off: :set noic

Lesson 7: Getting help

1
2
3
4
5
6
7
8
9
1. Type :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.
:r $VIMRUNTIME/vimrc_example.vim
6. When typing a : command,
press CTRL-D to see possible completions.
Press <TAB> to use one completion.

Next Step

It is far from complete as Vim has many many more commands. The next step you can read the vim built-in user manual:

1
2
3
:help user-manual
Press CTRL-] to jump to a subject under the cursor.
Press CTRL-O to jump back (repeat to go further back).
Contents
  1. 1. Lesson 1: Text Editing Commands
  2. 2. Lesson 2: Deletion Commands
  3. 3. Lesson 3: Replace and Change Commands
  4. 4. Lesson 4: Jump, Search, Substitute Commands
  5. 5. Lesson 5: Execute External Commands
  6. 6. Lesson 6: Open Append Set Commands
  7. 7. Lesson 7: Getting help
  8. 8. Next Step
|