vi Quick Reference.pdf

(26 KB) Pobierz
Vi Quick Reference
http://www.sfu.ca/~yzhang/linux
MOVEMENT
By Character
(lines - ends at <CR>;
sentence
- ends at puncuation-space;
section
- ends at <EOF>)
k
h
j
By Line
nG
0, $
^
or
_
+, -
By Screen
^F, ^B
^D, ^U
^E, ^Y
L
z↵
z.
z-
to line
n
first, last position on line
first non-whitespace char on line
first character on next, prev line
l
hjkl
Marking Position on Screen
mp
mark current position as
p
(a..z)
`p
move to mark position
p
'p
move to first non-whitespace on line w/mark
p
Miscellaneous Movement
fm
forward to character
m
Fm
backward to character
m
tm
forward to character before
m
Tm
backward to character after
m
w
move to next word (stops at puncuation)
W
move to next word (skips punctuation)
b
move to previous word (stops at punctuation)
B
move to previous word (skips punctuation)
e
end of word (puncuation not part of word)
E
end of word (punctuation part of word)
), (
next, previous sentence
]], [[
next, previous section
}, {
next, previous paragraph
%
goto matching parenthesis () {} []
scroll foward, back one full screen
scroll forward, back half a screen
show one more line at bottom, top
go to the bottom of the screen
position line with cursor at top
position line with cursor at middle
position line with cursor at
EDITING TEXT
Entering Text
a
append after cursor
A
or
$a
append at end of line
i
insert before cursor
I
or
_i
insert at beginning of line
o
open line below cursor
O
open line above cursor
cm
change text (m is movement)
Cut, Copy, Paste (Working w/Buffers)
dm
delete (m is movement)
dd
delete line
D
or
d$
delete to end of line
x
delete char under cursor
X
delete char before cursor
ym
yank to buffer (m is movement)
yy
or
Y
yank to buffer current line
p
paste from buffer after cursor
P
paste from buffer before cursor
“bdd
cut line into named buffer
b
(a..z)
“bp
paste from named buffer
b
Searching and Replacing
/w
search forward for
w
?w
search backward for
w
/w/+n
search forward for
w
and move down
n
lines
n
repeat search (forward)
N
repeat search (backward)
:s/old/new
:s/old/new/g
:x,ys/old/new/g
:%s/old/new/g
:%s/old/new/gc
replace next occurence of
old
with
new
replace all occurences on the line
replace all ocurrences from line
x
to
y
replace all occurrences in file
same as above, with confirmation
Miscellaneous
n>m
indent
n
lines (m is movement)
n<m
un-indent left
n
lines (m is movement)
.
repeat last command
U
undo changes on current line
u
undo last command
J
join end of line with next line (at <cr>)
:rf
insert text from external file
f
^G
show status
Zgłoś jeśli naruszono regulamin