• 目录
    {:toc}

vim学习

Part 1

1
2
3
4
5
- i → Insert 模式,按 ESC 回到 ormal 模式.
- x → 删当前光标所在的一个字符。
- :wq → 存盘 + 退出 (:w 存盘, :q 退出) (注::w 后可以跟文件名)
- dd → 删除当前行,并把删除的行存到剪贴板里
- p → 粘贴剪贴板

Part 2

  1. 插入模式
    • a → 在光标后插入
    • o → 在当前行后插入一个新行
    • O → 在当前行前插入一个新行
    • cw → 替换从光标所在位置后到一个单词结尾的字符
  2. 简单的移动光标
    • 0 → 数字零,到行头
    • ^ → 到本行第一个不是blank字符的位置(所谓blank字符就是空格,tab,换行,回车等)
    • $ → 到本行行尾
    • g_ → 到本行最后一个不是blank字符的位置。
    • /pattern → 搜索 pattern 的字符串(陈皓注:如果搜索出多个匹配,可按n键到下一个)
  3. 拷贝/粘贴
    • P → 粘贴;p是表示在当前位置之后,P表示在当前位置之前
    • yy → 拷贝当前行当行于 ddP;y -> 拷贝
  4. Undo/Redo
    • u → undo
    • C-r → redo
  5. 打开/保存/退出/改变文件(Buffer)
    • :e <path/to/file> → 打开一个文件
    • :w → 存盘
    • :saveas <path/to/file> → 另存为 <path/to/file>
    • :x, ZZ 或 :wq → 保存并退出 (:x 表示仅在需要时保存,ZZ不需要输入冒号并回车)
    • :q! → 退出不保存 :qa! 强行退出所有的正在编辑的文件,就算别的文件有更改。
    • :bn 和 :bp → 你可以同时打开很多文件,使用这两个命令来切换下一个或上一个文件。

Part 3

  1. vim的重复
    • . 小数点,重复上一条命令
    • N加命令,重复N次
  2. 光标移动
    • 数字加G,到第N行
    • gg,到第一行
    • G,到最后一行
    • w,到下个词开k移动到与当前光标相匹配的词(×是下一个,#是上一个)
  3. 组合命令(开始位置+命令+结束位置)
    • 0y$; 拷贝本行,+p粘贴
    • 能与光标移动联动的还有
      • d,删除
      • v,可视化选择
      • gU,变大写
      • gu,变小写
      • 其他

Part 4

  1. 当前行上移动光标
    • 0,到行头
    • ^,到本行的第一个非blank字符
    • $,到行尾
    • f字符,到下一个字符处
    • t字符,到符号前的第一个字符
    • 3fa,到本行第三次出现的a处
    • F和T,与f和t相似,方向相反
    • dt符号,删除符号前的所有内容
  2. 可视化选择v,V
    • J,把所有行连在一起
    • <和>,左右缩进
    • =,自动缩进
    • 选中行后,$到最后,a插入字符,Esc为每行添加字符
  3. 分屏
    • :split,创建分屏
    • ctrl-w,切屏