vim的命令模式下的使用

65 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第21天,点击查看活动详情


vim命令模式命令集

  • 按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;
  • 按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;
  • 按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。
  • 从插入模式切换为命令模式
    • esc键
  • 移动光标
    • vim可以直接用键盘上的光标来上下左右移动,但正规的vim是用小写英文字母「h」、「j」、「k」、 「l」,分别控制光标左、下、上、右移一格
      • 记忆方式:
      • h键在做左侧,l在左右侧 表示左右
      • j:jump 往下跳
      • k:king 高高在上
    • 按「G」:移动到文章的最后
    • 按「shift+ $ 」:移动到光标所在行的“行尾”
    • 按「shift+^」:移动到光标所在行的“行首”
    • 按照单词为单位进行前后光标移动
      • 按「w」:光标跳到下个单词的开头 (左移,往前移动)
      • 按「e」:光标跳到下个单词的字尾
      • 按「b」:光标回到上个字词的开头 (右移,往后移动)
    • 按「#l」:光标移到该行的第#个位置,如:5l,56l
    • 按[gg]:进入到文本开始 (跳到起始行)
    • 按[shift+g]:进入文本末端 (跳到结束行)
      • n+shift+g :跳到指定行
    • 按「ctrl」+「b」:屏幕往“后”移动一页
    • 按「ctrl」+「f」:屏幕往“前”移动一页
    • 按「ctrl」+「u」:屏幕往“后”移动半页
    • 按「ctrl」+「d」:屏幕往“前”移动半页

  • 删除文字
    • 「x」:小写的x, 每按一次,删除光标所在位置的一个字符 (小写的x:从左向右删除)
      • 支持nx 删除光标所在位置,及其往后的n个字符
    • 「#x」:例如,「6x」表示删除光标所在位置的“后面(包含自己在内)”6个字符
    • 「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符 (大写的x:从右向左删除)
      • 支持nX 删除光标所在位置,及其往前的n个字符
    • 「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符
    • 「dd」:删除光标所在行
      • 支持ndd 一次删除n行,包括当前行
    • 「#dd」:从光标所在行开始删除#行
  • 复制
    • 「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

    • 「#yw」:复制#个字到缓冲区

    • 「yy」:复制光标所在行到缓冲区。

    • 「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

      • nyy 表示拷贝从光标所在的该行“往下数”n行文字,包括当前行
    • 「p」:将缓冲区内的字符贴到光标所在位置。

      • np:一次重复粘贴n行

      • 注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

      • 先yy,然后直接np:在光标位置往后复制n行

      • dd之后再p :剪切

  • 替换
    • 「r」:替换光标所在处的字符
      • 支持nr 往后替换n个字符
    • 「R」:替换光标所到之处的字符,直到按下「ESC」键为止
    • shift + r 替换模式,直接进行多个内容的替换
  • 撤销上一次操作
    • 「u」:撤销误操作,如果您误执行一个命令,可以马上按下「u」,回到上一个操作。按多次“u”可以执行多次恢复
    • 「ctrl + r」: 撤销的恢复
  • 更改
    • 「cw」:更改光标所在处的字到字尾处
    • 「c#w」:例如,「c3w」表示更改3个字
    • shift + ~ :快速大小写切换
  • 跳至指定的行
    • 「ctrl」+「g」列出光标所在行的行号
    • 「#G」:例如,「15G」,表示移动光标至文章的第15行行首