Vi IMproved, a programmer's text editor, provides several modes for different kinds of text manipulation. Pressing i enters edit mode. Esc goes back to normal mode, which doesn't allow regular text insertion.

# To open a file:
vim <file>

# To enter text editing mode (insert mode):
<Esc>i

# To copy ("yank") or cut ("delete") the current line (paste it with 'P'):
<Esc><yy|dd>

# To undo the last operation:
<Esc>u

# To search for a pattern in the file (press 'n'/'N' to go to next/previous match):
<Esc>/<search_pattern><Enter>

# To perform a regex substitution in the whole file:
<Esc>:%s/<pattern>/<replacement>/g<Enter>

# To save (write) the file, and quit:
<Esc>:wq<Enter>

# To quit without saving:
<Esc>:q!<Enter>