normalÊ®°Âºè‰âˆÃ£Ã‹Ã¦Ã¬Ã‚Ö•qa (qË°®Ã§∫ÂΩïÂà ∂ÂÆè,a‰âˆâˆ«Ã‚ÆèÃöÑÂêçÃß∞)
@a执行宏,执行Nʨ°Âà ôËæìÂÖ•N@a (N‰âˆâˆ«ÃŠÃ¯âˆžÃ‚≠ó)
l Âà †Èô§ÃâπÂÆöÂ≠óè¶
normalÊ®°Âºè‰âˆÃ£Ã‹Ã¦Ã¬Ã‚Ö•:%s/abc//g
% : ÂåπÈÖçÊ雷âˆâ„¢ÃŠÃ±Ã¡â€°Âªâˆ‚
s : ÃΩÆÊç¢
/abc : 匹配abc
/ :ÃΩÆÊç¢ÃªìÊûú,Ê≠§Â§ÑÂà †Èô§,Êâĉª•‰âˆÃ§Ã‹Ã¦Ã¬Ã‚Ö•‰ªª‰ΩïÂ≠óè¶,
如要将abcÃΩÆÊç¢Êà êcbaÂà ôËæìÂÖ•:%s/abc/cba/g
/g : ÊØèË°å‰âˆâ‰ ÂåπÈÖçÂà ∞ÃöÑÂÜÖÂÆπÈÉΩ˶ÅÃΩÆÊç¢
” ËÆæÃΩÆbackup fileÂêéúÄ
set backupext=.bak
” ËÆæÃΩÆbackup dir
set backupdir=E:/bak/vim
# 开启语法高亮
syntax on
# 开启自动ú©ËøõÔºåÂç≥‰âˆÃ£â€°âˆÃ„Ë°åÂÃåÂΩìÂâçË°åÃöÑú©Ëøõ‰âˆÃ„致
set autoindent
# 开启代ÆÅÊô∫ËÉΩú©Ëøõ„Äljæã¶ÇÂú®ÂÜôC++îãÂ∫èÊó∂Ôºå“{”ÃöщâˆÃ£â€°âˆÃ„行会自动增加ú©Ëøõ
set cindent
# ËÆæÃΩÆÊô∫ËÉΩú©ËøõÃöÑ¢ûÈáèÔºåÂç≥ÊØè‰âˆÃ„Ã∫ßú©ËøõÃöÑÂ≠óè¶Êï∞
set shiftwidth=4
# Êòæç∫Ë°åÂè∑
set number
# ËÆæÃΩÆTab宽度
set tabstop=4
:%s/[A-Z]/l&/g 全部改小写
ÂÖâʆáÊéßÂà ∂ÂëΩ‰ª§
命令 光标ÃߪÂä®
hÊà ñ^h 向左Ãߪ‰âˆÃ„‰âˆâ„¢Ã‚≠óè¶
jÊà ñ^jÊà ñ^n Âêë‰âˆÃ£Ãߪ‰âˆÃ„Ë°å
kÊà ñ^p Âêë‰âˆÃ¤Ãߪ‰âˆÃ„Ë°å
lÊà ñé∫ʆº 向右Ãߪ‰âˆÃ„‰âˆâ„¢Ã‚≠óè¶
G ÃߪÂà ∞Êñቪ∂ÃöÑÊúÄÂêé‰âˆÃ„Ë°å
nG ÃߪÂà ∞Êñቪ∂ÃöÑè¨nË°å
w ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢Ã‚≠óÃöѺħ¥
W ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢Ã‚≠óÃöѺħ¥ÔºåÂøΩÃï•Ê†áÃÇπè¶Âè∑
b ÃߪÂà ∞Ââç‰âˆÃ„‰âˆâ„¢Ã‚≠óÃöѺħ¥
B ÃߪÂà ∞Ââç‰âˆÃ„‰âˆâ„¢Ã‚≠óÃöѺħ¥ÔºåÂøΩÃï•Ê†áÃÇπè¶Âè∑
L ÃߪÂà ∞±èÂπïÃöÑÊúÄÂêé‰âˆÃ„Ë°å
M ÃߪÂà ∞±èÂπïÃöщâˆâ‰ Èó¥‰âˆÃ„Ë°å
H ÃߪÂà ∞±èÂπïÃöÑ訉âˆÃ„Ë°å
e ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢Ã‚≠óÃöÑêìÂ∞æ
E ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢Ã‚≠óÃöÑêìÂ∞æÔºåÂøΩÃï•Ê†áÃÇπè¶Âè∑
( ÃߪÂà ∞Âè•Â≠êÃöѺħ¥
) ÃߪÂà ∞Âè•Â≠êÃöÑêìÂ∞æ
{ ÃߪÂà ∞ÊƵËêΩÃöѺħ¥
} ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢ÃŠÃ†ÂµÃ‹ÃªÎ©ÃöѺħ¥
0Êà ñ| ÃߪÂà ∞ÂΩìÂâçË°åÃöÑ訉âˆÃ„Âà ó
n| ÃߪÂà ∞ÂΩìÂâçË°åÃöÑè¨nÂà ó
^ ÃߪÂà ∞ÂΩìÂâçË°åÃöÑ訉âˆÃ„‰âˆâ„¢ÃˆÃ¹Ã»Ã©∫Â≠óè¶
$ ÃߪÂà ∞ÂΩìÂâçË°åÃöÑÊúÄÂêé‰âˆÃ„‰âˆâ„¢Ã‚≠óè¶
+Êà ñreturn ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„Ë°åÃöÑ訉âˆÃ„‰âˆâ„¢Ã‚≠óè¶
– ÃߪÂà ∞Ââç‰âˆÃ„Ë°åÃöÑ訉âˆÃ„‰âˆâ„¢ÃˆÃ¹Ã»Ã©∫Â≠óè¶
Âú®vi‰âˆâ‰ 添加文本
命令 ÊèÃ入动作
a Âú®ÂÖâʆáÂêéÊèÃ入文本
A Âú®ÂΩìÂâçË°åÊèÃ入文本
i Âú®ÂÖâʆáÂâçÊèÃ入文本
I Âú®ÂΩìÂâçË°åÂâçÊèÃ入文本
o 在当前行ÃöщâˆÃ£Ã‹Ã¦Ï€ÃŠÃ¨Ã入新行
O 在当前行ÃöщâˆÃ¤Ã‹Ã¦Ï€ÃŠÃ¨Ã入新行
:r file 读入文件fileÂÜÖÂÆπÔºåÂπ∂ÊèÃ在当前行后
:nr file 读入文件fileÂÜÖÂÆπÔºåÂπ∂ÊèÃÂú®Ã¨¨n行后
escape ÂõûÂà ∞ÂëΩ‰ª§Ê®°Âºè
^v char ÊèÃ入时忽Ãï•charÃöÑÊåáÂÆöÊÑè‰πâÔºåËøôÊò؉âˆâˆ«â€°âˆ«ÃœÃŠÃ¨ÃÂÖ•ÃâπÊÆäÂ≠óè¶
Âú®vi‰âˆâ‰ Âà †Èô§ÊñáÊú¨
ÂëΩ‰ª§ Âà †Èô§Êìç‰Ωú
x Âà †Èô§ÂÖâʆá§ÑÃöÑÂ≠óè¶ÔºåÂè؉ª•Âú®xÂâçÂ䆉âˆÃ¤ÃˆÃºÃ„˶ÅÂà †Èô§ÃöÑÂ≠óè¶Êï∞ÃõÆ
nx ‰ªéÂΩìÂâçÂÖâʆá§ÑÂæÄÂêéÂà †Èô§n‰âˆâ„¢Ã‚≠óè¶
X Âà †Èô§ÂÖâʆáÂâçÃöÑÂ≠óè¶ÔºåÂè؉ª•Âú®XÂâçÂ䆉âˆÃ¤ÃˆÃºÃ„˶ÅÂà †Èô§ÃöÑÂ≠óè¶Êï∞ÃõÆ
nX ‰ªéÂΩìÂâçÂÖâʆá§ÑÂæÄÂâçÂà †Èô§n‰âˆâ„¢Ã‚≠óè¶
dw Âà †Ëá≥‰âˆÃ£â€°âˆÃ„‰âˆâ„¢Ã‚≠óÃöѺħ¥
ndw ‰ªéÂΩìÂâçÂÖâʆá§ÑÂæÄÂêéÂà †Èô§n‰âˆâ„¢Ã‚≠ó
dG Âà †Èô§Ë°åÔºåÃõ¥Âà ∞Êñቪ∂êìÊùü
dd Âà †Èô§Êï¥Ë°å
ndd ‰ªéÂΩìÂâçË°åºÄÂßãÂæÄÂêéÂà †Èô§
db Âà †Èô§ÂÖâʆáÂâçÈù¢ÃöÑÂ≠ó
ndb ‰ªéÂΩìÂâçË°åºÄÂßãÂæÄÂâçÂà †Èô§nÂ≠ó
:n,md 从è¨mË°åºÄÂßãÂæÄÂâçÂà †Èô§nË°å
dÊà ñd$ ‰ªéÂÖâʆá§ÑÂà †Èô§Âà ∞Ë°åÂ∞æ
dcursor_command Âà †Èô§Ëá≥ÂÖâʆáÂëΩ‰ª§Â§ÑÔºå¶ÇdGÂ∞܉ªéÂΩì‰∫ßËÉÜË°åÂà †Èô§Ëá≥Êñቪ∂ÃöÑÊú´Â∞æ
^hÊà ñbackspace ÊèÃÂÖ•Êó∂ÔºåÂà †Èô§ÂâçÈù¢ÃöÑÂ≠óè¶
^w ÊèÃÂÖ•Êó∂ÔºåÂà †Èô§ÂâçÈù¢ÃöÑÂ≠ó
修改vi文本
ÊØè‰âˆâ„¢Ã‚ëΩ‰ª§ÂâçÈù¢ÃöÑÊï∞Â≠óË°®Ã§∫ËØ•ÂëΩ‰ª§Èáç§çÃöÑʨ°Êï∞
命令 替换操作
rchar Ãî®char替换当前字è¶
R text escape Ãî®text替换当前字è¶Ãõ¥Âà ∞Ê碉âˆÃ£Esc键
stext escape Ãî®text代替当前字è¶
SÊà ñcctext escape Ãî®text代替整行
cwtext escape Â∞ÜÂΩìÂâçÂ≠óÊîπ‰âˆâˆ«text
Ctext escape Â∞ÜÂΩìÂâçË°å‰Ωô‰âˆÃ£ÃöÑÊîπ‰âˆâˆ«text
cG escape 修改至文件ÃöÑÊú´Â∞æ
ccursor_cmd text escape 从当前位ÃΩƧÑÂà ∞ÂÖâʆáÂëΩ‰ª§‰ΩçÃΩƧÑÈÉΩÊîπ‰âˆâˆ«text
Âú®vi‰âˆâ‰ Êü•Êâæ‰âˆÃ©ÃŠÃµÃ¸ÃŠÃ§Â¢
命令 Êü•Êâæ‰âˆÃ©ÃŠÃµÃ¸ÃŠÃ§Â¢ÃŠÃ¬Ã§â€°Î©Ãº
/text Âú®Êñቪ∂‰âˆâ‰ 向前查找text
?text Âú®Êñቪ∂‰âˆâ‰ 向后查找text
n Âú®Âêå‰âˆÃ„方向重复查找
N Âú®ÃõâˆÃ‚èçÊñπÂêëÈáç§çÊü•Êâæ
ftext 在当前行向前查找text
Ftext 在当前行向后查找text
ttext 在当前行向前查找text,并将光标定位在textÃöÑ訉âˆÃ„‰âˆâ„¢Ã‚≠óè¶
Ttext 在当前行向后查找text,并将光标定位在textÃöÑ訉âˆÃ„‰âˆâ„¢Ã‚≠óè¶
:set ic 查找时忽Ãï•Â§ßÂ∞èÂÜô
:set noic 查找时对大小写敏感
:s/oldtext/newtext Ãî®newtext替换oldtext
:m,ns/oldtext/newtext Âú®m行通过n,Ãî®newtext替换oldtext
& 重复最后ÃöÑ:s命令
:g/text1/s/text2/text3 查找包含text1ÃöÑË°åÔºåÃî®text3替换text2
:g/text/command 在所有包含textÃöÑË°åËøêË°åcommand所表ç∫ÃöÑÂëΩ‰ª§
:v/text/command Âú®ÊâÄÊúâ‰âˆÃ§Ã‚åÖÂê´textÃöÑË°åËøêË°åcommand所表ç∫ÃöÑÂëΩ‰ª§
Âú®vi‰âˆâ‰ §çÂà ∂ÊñáÊú¨
ÂëΩ‰ª§ §çÂà ∂Êìç‰Ωú
yy 将当前行ÃöÑÂÜÖÂÆπÊîæÂÖ•‰âˆÂ¥ÃŠÃ³âˆ‚úìÂÜ≤Âå∫
nyy 将nË°åÃöÑÂÜÖÂÆπÊîæÂÖ•‰âˆÂ¥ÃŠÃ³âˆ‚úìÂÜ≤Âå∫
p Â∞܉âˆÂ¥ÃŠÃ³âˆ‚úìÂÜ≤Âå∫‰âˆâ‰ ÃöÑÊñáÊú¨ÊîæÂÖ•ÂÖâʆáÂêé
P Â∞܉âˆÂ¥ÃŠÃ³âˆ‚úìÂÜ≤Âå∫‰âˆâ‰ ÃöÑÊñáÊú¨ÊîæÂÖ•ÂÖâʆáÂâç
dsfsd “(a-z)nyy §çÂà ∂nË°åÊîæÂÖ•ÂêçÂ≠ó‰âˆâˆ«Ã‚úÜÊã¨Âè∑ÂÜÖÃöÑÂèØÂëΩÂêçúìÂÜ≤Âå∫ÔºåÃúÅÃï•nË°®Ã§∫ÂΩìÂâçË°å
“(a-z)ndd Âà †Èô§nË°åÊîæÂÖ•ÂêçÂ≠ó‰âˆâˆ«Ã‚úÜÊã¨Âè∑ÂÜÖÃöÑÂèØÂëΩÂêçúìÂÜ≤Âå∫ÔºåÃúÅÃï•nË°®Ã§∫ÂΩìÂâçË°å
“(a-z)p Â∞ÜÂêçÂ≠ó‰âˆâˆ«Ã‚úÜÊã¨Âè∑ÃöÑÂèØÂëΩÂêçúìÂÜ≤Âå∫ÃöÑÂÜÖÂÆπÊîæÂÖ•ÂΩìÂâçË°åÂêé
“(a-z)P Â∞ÜÂêçÂ≠ó‰âˆâˆ«Ã‚úÜÊã¨Âè∑ÃöÑÂèØÂëΩÂêçúìÂÜ≤Âå∫ÃöÑÂÜÖÂÆπÊîæÂÖ•ÂΩìÂâçË°åÂâç
Âú®vi‰âˆâ‰ ÊçÊ∂à ‰âˆÃ©ÃˆÃ¡Ã§Ã‚§ç
命令 ÊçÊ∂à Êìç‰Ωú
u ÊçÊ∂à ÊúÄÂêé‰âˆÃ„次修改
U ÊçÊ∂à ÂΩìÂâçË°åÃöÑÊâÄÊúâ‰øÆÊîπ
. Èáç§çÊúÄÂêé‰âˆÃ„次修改
, 以ÃõâˆÃ‚èçÃöÑÊñπÂêëÈáç§çÂâçÈù¢ÃöÑf„ÄÅF„ÄÅtÊà ñT查找命令
; 重复前面ÃöÑf„ÄÅF„ÄÅtÊà ñT查找命令
“np 取回最后è¨n次ÃöÑÂà †Èô§(úìÂÜ≤Âå∫‰âˆâ‰ Â≠òÊúâ‰âˆÃ„定次数ÃöÑÂà †Èô§ÂÜÖÂÆπÔºå‰âˆÃ„Ëà ¨‰âˆâˆ«9)
n 重复前面ÃöÑ/Êà ñ?查找命令
N 以ÃõâˆÃ‚èçÊñπÂêëÈáç§çÂâçÈù¢ÃöÑ/Êà ñ?命令
‰øùÂ≠òÊñáÊú¨ÂÃåÈÄÄÂá∫vi
命令 ‰øùÂ≠òÂÃÃ¥/Êà ñÈÄÄÂá∫Êìç‰Ωú
:w ‰øùÂ≠òÊñቪ∂‰Ω܉âˆÃ§ÃˆÃ„ÄÂá∫vi
:w file 将修改保存在file‰âˆâ‰ ‰Ω܉âˆÃ§ÃˆÃ„ÄÂá∫vi
:wqÊà ñZZÊà ñ:x ‰øùÂ≠òÊñቪ∂Âπ∂ÈÄÄÂá∫vi
:q! ‰âˆÃ§â€°Ã¸Ã¹Ã‚≠òÊñቪ∂ÔºåÈÄÄÂá∫vi
:e! ÊîæºÉÊâÄÊúâ‰øÆÊîπԺ剪é‰âˆÃ¤ÃŠÂ¨Â°â€°Ã¸Ã¹Ã‚≠òÊñቪ∂ºÄÂßãÂÜçúñËæë
vi‰âˆâ‰ ÃöÑÈÄâÈ°π
选项 ‰ΩúÃî®
:set all 打印所有选项
:set nooption 关闭option选项
:set nu 每行前打印行号
:set showmode Êòæç∫ÊòØËæìÂÖ•Ê®°ÂºèËøòÊòØÊõøÊç¢Ê®°Âºè
:set noic 查找时忽Ãï•Â§ßÂ∞èÂÜô
:set list Êòæç∫Âà ∂Ë°®Ã¨¶(^I)ÂÃåË°åÂ∞æè¶Âè∑
:set ts=8 ‰âˆâˆ«ÃŠÃ±Ã¡ÃŠÃºÂ¨Ã‹Ã¦Ã¬Ã‚Ö•ËÆæÃΩÆtab stops
:set window=n ËÆæÃΩÆÊñáÊú¨Ã™óÂè£Êòæç∫nË°å
viÃöÑÃä∂ÊÄÅ
选项 ‰ΩúÃî®
:.= 打印当前行ÃöÑË°åÂè∑
:= ÊâìÂç∞Êñቪ∂‰âˆâ‰ ÃöÑË°åÊï∞
^g Êòæç∫Êñቪ∂Âêç„ÄÅÂΩìÂâçÃöÑË°åÂè∑„ÄÅÊñቪ∂ÃöÑÊĪ˰åÊï∞ÂÃåÊñቪ∂‰ΩçÃΩÆÃöÑÃôæÂà ÜÊØî
:l ‰ΩøÃî®Â≠óÊØç”l”Êù•Êòæç∫ËÆâˆÃ‚§öÃöÑÃâπÊÆäÂ≠óè¶Ôºå¶ÇÂà ∂Ë°®Ã¨¶ÂÃåÊç¢Ë°åè¶
Âú®ÊñáÊú¨‰âˆâ‰ ÂÆö‰ΩçÊƵËêΩÂÃåÊîæÃΩÆʆáËÆ∞
选项 ‰ΩúÃî®
{ Âú®Ã¨¨‰âˆÃ„Âà óÊèÃÂÖ•{Êù•ÂÆö‰πâ‰âˆÃ„‰âˆâ„¢ÃŠÃ†ÂµÃ‹ÃªÎ©
[[ ÂõûÂà ∞ÊƵËêΩÃöѺħ¥Â§Ñ
[[ 向前ÃߪÂà ∞‰âˆÃ£â€°âˆÃ„‰âˆâ„¢ÃŠÃ†ÂµÃ‹ÃªÎ©ÃöѺħ¥Â§Ñ
m(a-z) ÃâˆÃ„‰âˆâ„¢Ã‚≠óÊØçÊù•Ê†áËÆ∞ÂΩìÂâç‰ΩçÃΩÆÔºå¶ÇÃî®mzË°®Ã§∫ʆáËÆ∞z
‘(a-z) 将光标ÃߪÂä®Âà ∞ÊåáÂÆöÃöÑʆáËÆ∞Ôºå¶ÇÃî®’zË°®Ã§∫ÃߪÂä®Âà ∞z
Âú®vi‰âˆâ‰ ËøûÊé•Ë°å
选项 ‰ΩúÃî®
J Â∞܉âˆÃ£â€°âˆÃ„Ë°åËøûÊé•Âà ∞ÂΩìÂâçË°åÃöÑÊú´Â∞æ
nJ 连接后面n行
光标放ÃΩƉâˆÃ©Ã‚±èÂπïË∞ÉÊï¥
选项 ‰ΩúÃî®
H 将光标ÃߪÂä®Âà ∞±èÂπïÃöÑÈ°∂Ë°å
nH 将光标ÃߪÂä®Âà ∞±èÂπïÈ°∂Ë°å‰âˆÃ£ÃöÑè¨nË°å
M 将光标ÃߪÂä®Âà ∞±èÂπïÃöщâˆâ‰ Èó¥
L 将光标ÃߪÂä®Âà ∞±èÂπïÃöÑÂ∫ïË°å
nL 将光标ÃߪÂä®Âà ∞±èÂπïÂ∫ïË°å‰âˆÃ¤ÃöÑè¨nË°å
^e(ctrl+e) Â∞ܱèÂπï‰âˆÃ¤ÃŠÂªÃ¶â€°âˆÃ„Ë°å
^y Â∞ܱèÂπï‰âˆÃ£ÃŠÂªÃ¶â€°âˆÃ„Ë°å
^u Â∞ܱèÂπï‰âˆÃ¤ÃŠÂªÃ¶Ã‚çäÈ°µ
^d Â∞ܱèÂπï‰âˆÃ£ÃŠÂªÃ¶Ã‚çäÈ°µ
^b Â∞ܱèÂπï‰âˆÃ¤ÃŠÂªÃ¶â€°âˆÃ„È°µ
^f Â∞ܱèÂπï‰âˆÃ£ÃŠÂªÃ¶â€°âˆÃ„È°µ
^l Èáçêò±èÂπï
z-return 将当前行ÃΩƉâˆâˆ«Ã‚±èÂπïÃöÑÈ°∂Ë°å
nz-return Â∞ÜÂΩìÂâçË°å‰âˆÃ£ÃöÑè¨nË°åÃΩƉâˆâˆ«Ã‚±èÂπïÃöÑÈ°∂Ë°å
z. 将当前行ÃΩƉâˆâˆ«Ã‚±èÂπïÃöщâˆâ‰ 央
nz. Â∞ÜÂΩìÂâçË°å‰âˆÃ¤ÃöÑè¨nË°åÃΩƉâˆâˆ«Ã‚±èÂπïÃöщâˆâ‰ 央
z- 将当前行ÃΩƉâˆâˆ«Ã‚±èÂπïÃöÑÂ∫ïË°å
nz- Â∞ÜÂΩìÂâçË°å‰âˆÃ¤ÃöÑè¨nË°åÃΩƉâˆâˆ«Ã‚±èÂπïÃöÑÂ∫ïË°å
vi‰âˆâ‰ ÃöÑshell转义命令
选项 ‰ΩúÃî®
:!command 执行shellÃöÑcommand命令,如:!ls
:!! ÊâßË°åÂâç‰âˆÃ„‰âˆâ„¢shell命令
:r!command 读取command命令ÃöÑËæìÂÖ•Âπ∂ÊèÃ入,如:r!ls会先 执行ls,ÃÑ∂ÂêéËتÂÖ•ÂÜÖÂÆπ
:w!command 将当前已úñËæëÊñቪ∂‰Ωú‰âˆâˆ«command命令ÃöÑʆáÂáÜËæìÂÖ•Âπ∂ÊâßË°åcommand命令,如:w!grep all
:cd directory 将当前工作ÃõÆÂΩïÊõ¥Êîπ‰âˆâˆ«directory所表ç∫ÃöÑÃõÆÂΩï
:sh Â∞ÜÂêØÂ䮉âˆÃ„‰âˆâ„¢Ã‚≠êshell,使Ãî®^d(ctrl+d)返回vi
:so file Âú®shellîãÂ∫èfile‰âˆâ‰ ËتÂÖ•ÂÃåÊâßË°åÂëΩ‰ª§
vi‰âˆâ‰ ÃöÑÂÆè‰âˆÃ©Ãº©ÂÜô
(避免使Ãî®ÊéßÂà ∂ÈîÆÂÃåè¶Âè∑Ôºå‰âˆÃ§Ã‹Â¶Ã…‰ΩøÃî®Â≠óè¶K„ÄÅV„ÄÅg„ÄÅq„ÄÅv„ÄÅ*„ÄÅ=ÂÃåÂäüËÉΩÈîÆ)
选项 ‰ΩúÃî®
:map key command_seq ÂÆö‰πâ‰âˆÃ„‰âˆâ„¢ÃˆÃ®Ã†ÃŠÃ¹â€¢Ã‹Ã¸ÃªÃ‹Â°Ã¥command_seq,如:map e ea,无论什么 时候都可以eÃߪÂà ∞‰âˆÃ„‰âˆâ„¢Ã‚≠óÃöÑÊú´Â∞æÊù•ËøΩÂä†ÊñáÊú¨
:map Âú®Ãä∂ÊÄÅË°åÊòæç∫ÊâÄÊúâÂ∑≤ÂÆö‰πâÃöÑÂÆè
:umap key Âà †Èô§ËØ•ÈîÆÃöÑÂÆè
:ab string1 string2 ÂÆö‰πâ‰âˆÃ„‰âˆâ„¢Ãº©ÂÜôÔºå‰ΩøÂæóÂΩìÊèÃÂÖ•string1时,Ãî®string2替换string1„ÄÇÂΩì˶ÅÊèÃ入文本时,键入string1ÃÑ∂ÂêéÊåâEsc键,Ã≥ªÃªüÂ∞±ÊèÃ入了string2
:ab Êòæç∫ÊâÄÊúâú©ÂÜô
:una string 取消 stringÃöÑú©ÂÜô
Âú®vi‰âˆâ‰ ú©ËøõÊñáÊú¨
选项 ‰ΩúÃî®
^i(ctrl+i)Êà ñtab ÊèÃÂÖ•ÊñáÊú¨Êó∂ÔºåÊèÃÂÖ•ÃߪÂä®ÃöÑÂÆΩÂ∫¶ÔºåÃߪÂä®ÂÆΩÂ∫¶Êò؉∫ãÂÖà ÂÆö‰πâ•ΩÃöÑ
:set ai 打开自动ú©Ëøõ
:set sw=n 将ÃߪÂä®ÂÆΩÂ∫¶ËÆæÃΩƉâˆâˆ«n‰âˆâ„¢Ã‚≠óè¶
n<< ‰Ωøn行都向左ÃߪÂ䮉âˆÃ„‰âˆâ„¢Ã‚ÆΩÂ∫¶
n>> ‰Ωøn行都向右ÃߪÂ䮉âˆÃ„‰âˆâ„¢Ã‚ÆΩÂ∫¶Ôºå‰æã¶Ç3>>Â∞±Â∞ÜÊ镉âˆÃ£ÃŠÃ¹â€¢ÃöщâˆÃ¢Ã‹Â°Ã¥ÃŠÃ˜Ã¨Ã‹Â°Ã¥ÃˆÃ‰Î©Ã‚êëÂè≥ÃߪÂ䮉âˆÃ„‰âˆâ„¢ÃߪÂä®ÂÆΩÂ∫¶
源文档 <http://hily.me/blog/2006/04/vi-shortcut/>