• motion
    • ^/$/0//g_/h/l/j/k/w/W/e/E/b/B/ge/gE/gg/G//(/)/{/}/nH/M/nL/点鼠标
      • 移动motion
      • ge同b, 停在单词尾部
      • <home>同0, 到行开始, ^则到本行第一个字符 - gg同,G同,10G跳到第10行
      • fx 移动到下一个x, F反向查找, tx 移动到x的前一个字符
      • nG 跳到第n行
    • f/F/t/T # 行搜索motion 重复查找(以相反方向重复搜索)
    • ; # 重复移动上次f/F/t/T的字符
    • , # 撤销上次f/F/t/T移动
      • 查找当前词
    • nzz/nz- # 跳到指定行, 显示在屏幕中间/底部
      • zz 当前屏幕到中间
    • 可视模式
      • $ # 块可视模式中,表示所有行尾
      • i/a # 块可视模式中有不同含义
  • operator
    • 3G # 跳到第3行
    • /text   # 查找text,按n健查找下一个,按N健查找前一个。
    • ?text   # 查找text,反向查找,按n健查找下一个,按N健查找前一个。
    • 或# # # *相当于/,#相当于?
      • g* 搜索子串
      • gd 同* 但跳到第一个匹配序列
    • % # 搜索对应括号
    • o marks
    • “ # 跳回
      • `” 最后编辑的位置
      • `[ 最后修改的开始位置
      • `] 最后修改的结束位置
      • ’. `. 跳到上次编辑位置
    • ” # 跳回到第一个非空白字符
    • marks # 显示系统全部书签
    • ma # mark当前光标位置为a,小写字母不同文件标记不同行, 大写字母全局标记,但webstorm中ideaVim不行
    • `a # 跳到a的位置
  • Ex command
    • :10 # 跳到第10行, 同10G, 0位于第一行上方
    • :jumps # 输出能跳往的位置列表,可跳转多个文件
    • :$ # 文件结尾
    • :. # 当前位置
    • :% # 文件中的所有行
    • :’< # 选中区开始
    • :’> # 选中区结尾
    • :‘m # 位置标记为m的行
    • ://,/<\html>/ # 模式匹配范围
    • : 1+1, 5-1 # 开始向下偏移一行,结尾向上偏移一行
    • :vim[grep] abc test # 在test文件中grep匹配abc
  • shortcut key
    • <c - e>/y # 向下/上滚动一行 - <c - d>/u # 向下/上滚动半屏 - <c - f>/b # 向下/上滚动一屏 - <c - i>/o # 到下个/上个跳动过的位置