Introduction to Vim
An Introduction to Vim
Alex LaFroscia @alexlafroscia

A Quick History
About Vim
- Created in 1991
- Runs in a terminal window
- Liked for speed, customization
Why Use Vim?
- Very portable configuration
- Extremely fast editing
- Awesome plugin community
Things to Know
- Available in a terminal window
- No mouse!
Learning Curve

Title Text
Getting to Know Vim
3 Modes
- Normal Mode
- Insert Mode
- Visual Mode
Normal Mode

- Movement allowed
- Execute Vim commands
- Move quickly around the file
- Other modes return to here
Visual Mode

- Movement allowed
- Select text
- Cut/Copy (yank)
- Paste

Insert Mode

- Movement (sort of) allowed
- Most similar to editors that you're familiar with
File Commands
Manipulating the File
Movement
// Basic motion
h : move right
l : move left
j : move down
k : move up
// Jumping
w : beginning of next word
e : end of next word
b : beginning of previous word
ge : end of previous word
% : jump to matching symbol
// Moving Faster
2h : move 2 characters right
4w : move to the front of the 4th word
- Arrow keys work, but don't use them
- By default, move one "step" at a time
- Can be combined with numbers to repeat movements
Operations
// Basic Ops
x : delete
r : replace (single character)
c : replace selection
// Undo
u : undo one step
ctl-r : repo one step
// Moving Text Around
d : cut
y : copy (yank)
p : paste after (similar to a)
P : paste before (similar to i)
// Other
/ : search in file
- The basic commands of Vim
- Text manipulation
Transitioning Between Modes
// Insert Mode
i : insert "under" cursor
a : insert "after" cursor
I : insert at beginning of line
A : insert at end of line
o : insert on next line (below)
O : insert on previous line (above)
// Visual Mode
v : regular selection
V : line selection
opt-v : block selection
// Leaving a Mode
esc : back to normal
- Vim gives lots of options for transitioning between modes
- Picking the right command is important
Vim Commands
Controlling the Editor
Basic Commands
// Quitting Vim
:q : quit
:qa : quit all
:qa! : force quit all
// Save a File
:w : save
:wq : save and quit
// Other stuff
:help __command_name__
- Vim commands usually start with a colon
- Toggle features on and off
Vim Features
What sets Vim apart?
Panes
// Movement
h : move right
l : move left
j : move down
k : move up
// Jumping
w : beginning of next word
e : end of next word
b : beginning of previous word
ge : end of previous word
- Allows you to have multiple files open at once
- Can split horizontally or vertically
VIm (In-Depth)
By Alex LaFroscia
VIm (In-Depth)
A more in-depth look at the Vim editor
- 1,846