基本移动和编辑

  • h/j/k/l → 左下上右(替代方向键,更快)

  • w → 光标跳到下一个单词开头

  • b → 光标跳到当前或前一个单词开头

  • 0 → 跳到行首

  • ^ → 跳到本行第一个非空字符

  • $ → 跳到行尾

  • dd → 删除整行

  • yy → 复制整行

  • p → 粘贴(在光标后)

  • u → 撤销

  • Ctrl + r → 重做

常用复制:

  • 5yy → 复制 5 行

  • y$ → 复制光标到行尾

  • y0 → 复制光标到行首

  • yw → 复制一个单词

  • yiw → 复制当前单词(不依赖光标位置)

  • v + 移动 + y → 选中后复制(可视模式)

  • "+yy → 复制到系统剪贴板(可在系统里 Ctrl+V)


快速搜索和替换

  • /pattern → 向下搜索 pattern

  • ?pattern → 向上搜索

  • n → 跳到下一个匹配

  • N → 跳到上一个匹配

  • :%s/old/new/g → 全文替换 oldnew

  • :%s/old/new/gc → 全文替换时每次确认


多行编辑和缩进

  • >> → 当前行右移一个缩进

  • << → 当前行左移一个缩进

  • 5>> → 将当前行及下面 4 行右移一个缩进

  • v → 进入可视模式,选中多行后可以剪切/复制/缩进

多行复制补充:

  • 可视模式选中多行 → y 复制

  • y} → 复制到下一个段落

  • yap → 复制整个段落(around paragraph)


插入模式的小技巧

  • i → 光标前插入

  • I → 行首插入

  • a → 光标后插入

  • A → 行尾插入

  • o → 光标下方新开一行并进入插入模式

  • O → 光标上方新开一行并进入插入模式


跳转技巧

  • gg → 跳到文件开头

  • G → 跳到文件结尾

  • :n → 跳到第 n 行

  • % → 光标在括号/大括号/中括号上时,跳到匹配的另一边


保存、退出

  • :w → 保存

  • :q → 退出

  • :wq / ZZ → 保存并退出

  • :q! → 不保存强制退出


组合命令提高效率

  • d} → 删除到下一个段落

  • y} → 复制到下一个段落

  • > + } → 缩进到下一个段落

  • ciw → 删除当前单词并进入插入模式

  • ci" → 删除当前引号里的内容并进入插入模式