详细请见vimtutor,终端输入
vimtutor1.正常模式-[Esc] 2.命令模式-[:] 3.可视模式-[v,V] 4.插入模式-[i,I] 详细请见:Vim操作的四种模式
1.光标移动
h j k l #左 下 上 右,同方向键 [motion] w #向前移动1个单词(光标在单词首位) e #向前移动1个单词(光标在单词末位) [number] [motion] 0 #回到当前行行首(数字0) 2w 3e $ #光标移至当前行行末 G #移动至文档末尾 g #移动至文档开头 Ctrl +g #显示光标在文档位置 [number] G #移至文档[number]行2.退出vim编辑器
:q! #退出不保存 :wq #退出且保存 :w TEST #将当前文件保存为TEST(文件名)的文件 #补 :r TEST #复制TEST(文件名)的文本到当前光标之后3.插入字符
i #光标位置前插入字母 a #光标之后插入 s #删除当前字符再插入 o # 在当前行之下新建行 I #行首插入 A #行末插入 S #删除当前字符所在行 O #在当前行之上新建行4.删除字符
d [number] [motion] #删除 字符个数 相应操作选项 d [motion] dw #删除当前单词(光标移至下一单词首位) de #删除当前单词(光标移至当前单词末位) d$ #删除至行末 [number] [motion] 0 #数字0,移至当前行首 2w #向前移动2个单词(光标在单词首位) 3e #向前移动3个单词(光标在单词末位) 同理,可知 d2w d3e 等操作 dd #删除当前行 2dd #删除两行5.撤销操作
u #恢复上一步操作 U #恢复在当前行执行的所有操作 Ctrl+R #撤销u执行的所有操作6.字符替换
r #替换当前字符 R #替换多个字符 c [number] [motion] #[number] [motion]含义同删除操作,并进入insert模式 #示例: ce #删除单词(从当前光标开始)7.搜索、
/[phrase] #搜索单词[phrase] ?[phrase] #逆序搜索单词 n #顺序搜索,同Ctrl+I N #逆序搜索,同Ctrl+O % #将光标置于([{或)]}上,搜索相匹配的另一部分 set ic #忽视大小写的不同,ic:ignore case set noic #考虑大小写 'is' 'incsearch' #部分匹配 'hls' 'hlsearch' #高亮所有8.替换单词
:s/[old]/[new]/g #当前行中新词[new]替代旧词[old] :1,12s/[old]/[new]/g #1-12行中新词[new]替代旧词[old] :%s/[old]/[new]/g #整个文档中新词[new]替代旧词[old] :%s/[old]/[new]/gc #整个文档中新词[new]替代旧词[old],并给出提示9.执行外部命令
:!<command> #执行外部命令 #如 :!ls #显示目录信息 :!rm TEST #删除当前文件夹下文件名为TEST的文件10.其他
v #进入visual模式 y #复制 p #黏贴 yw #复制一个单词 :help #帮助