一.插入篇
- 光标前插入: a
- 行首插入: A
- 光标后插入: i
- 行尾插入: I
- 光标下一行新起一行并进入Insert模式: o
- 光标上一行新起一行并Insert模式: O
二.光标篇
- 使用hjkl来进行光标移动,因为使用箭头会使手指移出键盘区。
- 向下翻页: ctrl+f
- 向上翻页: ctrl+b
- 光标定位到行末: $
- 光标定位到行首: ^
- 光标定位到单词首字母: b
- 光标定位到单词末字母: e
- 光标定位到首行行首; g
- 光标定位到末行行首: G
- 光标定位到当前页第一行: H
- 光标定位到当前页最后一行: L
三.删除剪切篇
- 删除光标所在字符: x
- 删除光标之后的多个字符: 数字+x
- 删除整行:dd(再按p可粘贴,不管光标在什么位置,都另起一行粘贴)
- 删除多行: 数字+dd
- 删除光标所在行到末行: dG
- 删除光标所在单词:daw(不管光标在单词中的那个位置)
- 删除光标所在位置之后的单词部分:dw(包括单词后面的空格)
- 删除光标所在单词并进入insert模式: caw
- 删除光标所在处到该行的最后一个字符: d$
- 删除某一行到某一行: 命令模式下10,99d(删除从10行到99行)
- 单个单词替换: 复制第一个单词后,光标移动到待替换单词上,键入viwp(很常用)
四.复制篇
- 复制光标所在整行; yy
- 复制光标所在单词; yaw
五.文件篇
- 在shell中使用vim多开文件: vi file1 file2 ... (文件切换 :bn :bp)
- 在shell中实用vim垂直多开文件: vi -o file1 file2 ...(多开之后文件转换ctrl+ww)
- 在vim中多开文件: (命令模式):e file1
- 在vim中,临时挂起vim退到shell: ctrl+z. 回到vim中: shell中输入fg。如果挂起了多个vim,可以使用jobs查看,然后fg+参数回到相应vim中。
六.其他操作篇
- 向下查找:/xxx 向上查找: ?xxx
- 可以使用 ctrl+[ 代替 esc。
- vim下ctrl+g可以查看文件名。
- vim下回到上次编辑位置 ctrl+o。
- 按 . (就是句号啦)可以重复上一步的操作
- 撤销: u
- 反撤销: ctrl+r
- 画面向下滚动一行: ctrl+e
- 画面向上滚动一行: ctrl+y
- 全局字符串替换: %s/源字符串/修改的字符串/g
- 取消换行: J