Vim 学习整理

Vim对于提高编写生产力有很大帮助,笔者正在适应在日常场景下,更多地使用Vim进行代码编写工作,浅浅做整理,以帮助定期温习。本博文持续更新中…..

快捷键汇总

  • 方向控制: h(left) j(down) k(up) l(right)

  • 退出当前模式或清空任意已录命令 均可使用ESC

  • 插入内容:

    • i : 在光标之前插入。
    • I: 在光标所在行的首部之前插入。
    • a : 在光标之后插入。
    • A:在光标所在行的尾部之后插入。
    • o: 在光标所在行的下方插入一个空行用于编辑。
    • O(大写): 在光标所在行的上方插入一个空行用于编辑。
  • 删除(剪切)内容:
    遵照格式 [number] operator motionoperator [number] motion。删除的operator是d

    • dw: w表示从当前光标位置开始执行删除,直到遇到下一个单词或标点。将光标置于单词首字母,常用来删除整个单词
    • de: e表示从当前光标位置开始执行删除,直到对本单词最后一个字母完成删除为止。
    • d$: $表示从当前光标位置开始执行删除,直到本行结束。
    • dd: 特殊组合,删除当前光标所在行。
    • x:删除光标当前位置处的字符。
  • 修改内容(删除内容并进入编辑模式):
    遵照格式 [number] operator motionoperator [number] motion。修改的operator是c

    • cwce效果相同,都可在单词首字符处使用,表示删除该单词并置为编辑模式。
    • c$: $表示从当前光标位置开始执行删除,直到本行结束,然后进入编辑模式。
    • cc: 特殊组合,删除当前光标所在行后进入编辑模式。
  • 复制内容:
    遵照格式 [number] operator motionoperator [number] motion。复制的operator是y

    • yw: w表示从当前光标位置开始执行复制,直到遇到下一个单词或标点。将光标置于单词首字母,常用来复制整个单词
    • ye: e表示从当前光标位置开始执行复制,直到对本单词最后一个字母完成复制为止。
    • y$: $表示从当前光标位置开始执行复制,直到本行结束。
    • yy: 特殊组合,复制当前光标所在行。
  • 粘贴:

    • p: 在光标之后粘贴一个字符,或在光标所在行下方粘贴(若干)行。
  • 撤销修改:

    • u: 撤销上一个命令带来的修改。
    • U: 撤销本行的全部修改(可被u撤销)。
    • Ctrl+R: 恢复上次被u撤销的修改。
  • 行与位移:

    • set nu: 在右侧显示行号。
    • Ctrl+G: 在底部显示文件名和光标当前位置(所在行/全部行 列)。
    • G: 到文件最后一行。
    • gg: 到文件的第一行。
    • :行号: 跳到任意一行。
  • 查找:

    • /+任意内容+回车: 从文件首往下查找匹配的内容。
    • ?+任意内容+回车: 从文件尾往上查找匹配的内容。
    • n: 查找下一个匹配项。
    • N: 查找上一个匹配项。
    • %: 将光标移到括号处,按下%,可以快速找到与当前括号匹配的括号。
    • 0: 到行首。
    • $: 到行尾。
    • w: 移动到下一个单词的首部。
    • b: 移动到上一个单词的首部。
    • e: 移动到下一个单词的尾部。
  • 替换

    • r+任意字符 将光标处的字符替换为任意字符。
    • R: 进入替换模式,等效于Vim帮你常按了r键和光标移动。需要ESC返回正常模式。
    • :s/old/new/g: 将光标所在行的全部old内容替换为new(g是全部替换)。
    • :#s/old/new/g: #是行号,最多指定两个行号,彼此用逗号隔开。将指定行的全部old内容替换为new内容(g是全部替换)。
    • :%s/old/new/gc: 在整个文件范围内将全部old内容替换为new(g是全部替换 c是每次替换都进行确认)。
  • 执行外部shell命令:
    可以在键入:! 后,输入任何终端命令,Vim将暂时退返shell终端显示命令结果,稍后只需按下Enter键即可返回Vim。

    • :!ls :!mkdir xx:!rm xx:!top等都很常用。
  • 文件的写入:

    • :wq: 保存文件到磁盘并退出。
      • q: :如果你把冒号和q的顺序输反了,就会进入到历史命令界面,这时请通过Ctrl+C 来退回到命令模式。
    • :x: 更简短的保存文件到磁盘并退出。
    • :w FileName: 以指定的文件名保存文件到磁盘,等效于文件另存为。特别地,按v进入可视模式,选中若干文本后,再执行该操作,则能实现另存选中文本到指定文件。
  • 缓冲区:

    • "键 组合 +键 (两个都需要Shift) 然后再执行复制之类的操作,可以将结果存入缓冲区,跨文件使用。

参考

[1] : Vim-CS自学指南

[2] : Vimtutor


Vim 学习整理
http://example.com/posts/e9d4a39f/
发布于
2022年8月17日
许可协议