• 普通模式:用于浏览和编辑文本
• 插入模式:用于输入文本,按 i 进入插入模式
• 可视模式:用于选择文本,按 v 进入可视模式
• 命令模式:用于输入命令,按 : 进入命令模式
• h:光标左移
• j:光标下移
• k:光标上移
• l:光标右移
• w:移动到下一个单词的开头
• b:移动到上一个单词的开头
• e:移动到当前单词的结尾
• 0:移动到行首
• $:移动到行尾
• gg:移动到文件开头
• G:移动到文件结尾
• i:在光标前插入
• I:在行首插入
• a:在光标后插入
• A:在行尾插入
• o:在当前行下方新开一行并插入
• O:在当前行上方新开一行并插入
• Esc:返回普通模式
• v:进入可视模式
• V:进入行可视模式
• Ctrl + v:进入块可视模式
• y:复制选中文本
• d:删除选中文本
• c:修改选中文本
• :w:保存文件
• :q:退出 Vim
• :wq 或 ZZ:保存并退出
• :q!:不保存退出
• :x:保存并退出(若文件有修改)
• :e filename:打开文件
• :bnext 或 :bn:切换到下一个缓冲区
• :bprev 或 :bp:切换到上一个缓冲区
• x:删除光标所在字符
• dd:删除当前行
• yy:复制当前行
• p:在光标后粘贴
• u:撤销操作
• Ctrl + r:重做操作
• .:重复上一次命令
• /pattern:向前查找 pattern
• ?pattern:向后查找 pattern
• n:跳转到下一个匹配项
• N:跳转到上一个匹配项
• :%s/old/new/g:全局替换 old 为 new
• :%s/old/new/gc:全局替换 old 为 new,每次替换前确认
• :ls:列出所有缓冲区
• :b [n]:切换到缓冲区编号 [n]
• :split 或 :sp:水平分割窗口
• :vsplit 或 :vsp:垂直分割窗口
• Ctrl + w w:在分割窗口之间切换
• :close:关闭当前窗口
• :only:关闭其他窗口
• Ctrl + o:返回上一个光标位置
• Ctrl + i:前进到下一个光标位置
• .:重复上一次的修改命令
• :set number:显示行号
• :set nonumber:隐藏行号
• Ctrl + n:向下补全
• Ctrl + p:向上补全